15. juni 2000 - 09:12Der er
8 kommentarer og 1 løsning
HVORDAN BESKRIVES EN TOM CELLE
NÅR JEG HENVISER TIL EN TOM CELLE I EXCE HVORDAN BESKRIVES DET ? HVIS JEG SKRIVER SÅDAN "" BLIVER DET SÅ BETRAGTET SOM SAND (TRUE)ELLER SKAL DET GØRES PÅ EN ANDEN MÅDE EKSEMBEL:
Der bliver investeret massivt i AI. Teknologien er mere tilgængelig end nogensinde, og ambitionerne er høje. Alligevel oplever mange virksomheder, at resultaterne udebliver.
Private Sub CommandButton1_Click() Range("L7:S14").Select Selection.Copy If Range("AE7").Value = "" Then Range("AE7").Select End If If Range("AE16").Value = "" Then Range("AE16").Select End If If Range("AE25").Value = "" Then Range("AE25").Select End If If Range("AE34").Value = "" Then Range("AE34").Select End If Selection.PasteSpecial
HEJ JPER HER ER HELE KODEN MED DIT FORSLAG NU VIRKEND DOG MED DEN UNDTAGELSE AT DEN KØRER DEN SIDSTE IF FØRST OG JEG FIK ET NYT PROBLEM ,NÅR ALLE IFFER ER UDFØRT SLETTER DEN DE OPSAMLEDE CELLER KAN MAN INDSÆTTE EN MGSBOX DER FORTÆLLER NÅR ALLE IFFER ER UDFØRT SÅ MAN IKKE KØRE SYNTAXEN TIL ENDEMED SLETNINGEN TIL FØLGE Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False Range("C7,C10,C12,C13").Select Range("C13").Activate Selection.ClearContents Range("C16").Select End Sub
Jeg forstår ikke at den sidste If kører først det lyder underligt, og jeg forstår ikke helt det der med at syntaxen ikke skal køre til ende, du kan jo fjerne koden efter den sidste end if så stopper den jo med at kører.
Selection.PasteSpecial paster alt fra clipboard ind i den valgte celle og frem efter, hvis AE34 er tom så er det den aktive celle når PasteSpecial kører og derfor bliver alt puttet ind ved denne celle det kan være derfor det ser ud som om at den sidste if sætning kører først.
For at få vist en messagebox er syntaxen: MsgBox "noget tekst" som skal sættes ind efter den sidste end if. Men resten af koden kører videre når du trykker ok derfor skal du teste på svaret fra messageboxen:
dim svar as Integer
svar = MsgBox "Fortsæt?", VbOkCancel if svar = VbOk then 'Kør resten af koden else Exit Sub 'Stop koden End If
Så løsningen er nok at sætte PasteSpecial ind efter Range("C7,C10,C12,C13").Select
JPER NÅR JEG STARTER ER ALLE CELLER TOMME JEG PRØVEDE AT SÆTTE ET BOGSTAV IND I DEN SIDSTE CELLE OG KODEN INDSATTE I DEN NÆST SIDST ALSÅ ("AE25")JEG VIL MENE NÅR ("AE7") ER TOM SKULLE DEN SÅ IKKE STARTE MED AT UDFØRE DET FØRST IF OG INDSÆTTE I ("AE7") DET ANDET DU SKRIVER HAR JEG IKKE PRØVET ENDNU
Åhhh På den måde! Nej sådan fungere det ikke, det du vil er altså (som jeg forstår det) at hvis AE7 er tom skal der pastes ind i den og hvis den ikke er det så skal det være i den næste celle altså AE16 osv. osv. Så skal det være noget i retning af det her:
Private Sub CommandButton1_Click() Range("L7:S14").Select Selection.Copy If Range("AE7").Value = "" Then Range("AE7").Select ElseIf Range("AE16").Value = "" Then Range("AE16").Select ElseIf Range("AE25").Value = "" Then Range("AE25").Select Else Range("AE34").Value = "" Then Range("AE34").Select End If Selection.PasteSpecial
JAAAAAAHHH NU VIRKER DET JEG HAR TASTET EN MSGBOX IND ET FORKERT STED TROR JEG FOR JEG SKAL SVARE HVER GANG OG IKKE NÅR ARKET ER UDFYLDT DVS DEN SIDST CELLE DETTE ER KUN EN DEL AF CELLERNE DER ER I SYNTAXEN DET ER 5 HELE ARK SOM SKAL UDFYLDES SKL DER EN IF IND FØR MSGBOXEN? DET SVAR DU HAR SENDT ER MAGEN TIL EN TIDLIGERE UDGAVE SOM JEG HAR PRØVET JEG VISTE BARE IKKE DER SKAL STÅ VALUE FØR = SÅ HAR JEG OGSÅ LÆRT NOGET I DAG JEG HAR BØVLET MED DEN KODE LÆNGE SÅ JEG ER MEGET GLAD FOR DU KUNNE HJÆLPE NU SER DET SÅDAN UD Private Sub CommandButton1_Click() Range("L7:S14").Select Selection.Copy Range("L7:S14").Select Selection.Copy If Range("AE7").Value = "" Then Range("AE7").Select ElseIf Range("AE16").Value = "" Then Range("AE16").Select ElseIf Range("AE25").Value = "" Then Range("AE25").Select ElseIf Range("AE34").Value = "" Then Range("AE34").Select End If msg = msg & "ARKET ER FULD ?" svar = MsgBox(msg, vbOKCancel, " PAS PÅ ") If svar = vbOK Then End If If svar = vbCancel Then Exit Sub End If Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False Range("C7,C10,C12,C13").Select Range("C13").Activate Selection.ClearContents Range("C16").Select
DET ER VEL IKKE EN VBOK/CANCELBOX JEG SKAL BRUGE ,DER ER DA BARE EN MSGBOX DER FORTÆLLER AT ARKET ER FYLDT OG VED OK SKAL JEG EXIT SUB KAN MAN DET ?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.