HopelessFrag Geschrieben 2. Juni 2006 Geschrieben 2. Juni 2006 Hallo zusammen! Ich bin totaler VB-Anfänger. Ich soll aber in Excel mit VB ein kleines Makro in Excel schreiben. Den größten Teil habe ich schon selber geschafft. Aber jetzt komm ich nicht mehr an einer Schleife vorbei, dessen Struktur ich bis jetzt noch nicht ganz begriffen hab. Vielleicht könnt ihr mir ja auf die Sprünge helfen. Folgendes Problem: solange Workbooks("arbeitsaufwand").Sheets("Übersicht").Range("A" + index).Value NICHT leer ist soll die Variable index + 1 gerechnet werden. Danke im voraus! Zitieren
DevHB Geschrieben 2. Juni 2006 Geschrieben 2. Juni 2006 Hi, Dim sTmp As String Dim lIndex As Long sTmp = Workbooks("arbeitsaufwand").Sheets("Übersicht").Range("A1").Value Do While sTmp <> vbNullString ' oder -> " " sTmp =Workbooks("arbeitsaufwand").Sheets("Übersicht").Range("A" & lIndex lIndex).Value lIndex = lIndex + 1 Loop Ungetestet, sollte aber in etwa stimmen. Zitieren
HopelessFrag Geschrieben 2. Juni 2006 Autor Geschrieben 2. Juni 2006 Erstmal vielen Dank für deine Hilfe. Aber an der Stelle sTmp =Workbooks("arbeitsaufwand").Sheets("Übersicht").Range("A" & lIndex lIndex).Value kommt die Fehlermeldung: Fehler beim Kompilieren: Erwartet: Listentrennzeichen oder ) Woran liegt es? Zitieren
DevHB Geschrieben 2. Juni 2006 Geschrieben 2. Juni 2006 Naja, ein wenig selber schauen ist manchmal nicht schlecht: sTmp =Workbooks("arbeitsaufwand").Sheets("Übersicht").Range("A" & lIndex lIndex).Value wird zu sTmp =Workbooks("arbeitsaufwand").Sheets("Übersicht").Range("A" & lIndex).Value Zitieren
HopelessFrag Geschrieben 2. Juni 2006 Autor Geschrieben 2. Juni 2006 Nun kommt es zu folgender Fehlermeldung: Laufzeitfehler '1004': Anwendungs- oder Objektdefinierter Fehler Zitieren
isardor Geschrieben 7. Juni 2006 Geschrieben 7. Juni 2006 Dann vielleicht mit sTmp =Workbooks("arbeitsaufwand").Sheets("Übersicht").Range("A" + lIndex).Value Zitieren
-roTekuGeL- Geschrieben 9. Juni 2006 Geschrieben 9. Juni 2006 dim index as integer index = 1 do while tabelle1.cells(index, 1) <> "" index = index + 1 loop tabelle1 ist der technische name einer excel tabelle (findet man im VB editor auf der linken seite) er greift dabei immer auf die tabelle1 zu wo das makro abgelegt ist (und nich auch auf andere mappen wenn die offen sind) wenn du das makro übergreifen nutzen willst nimm activesheet, aber das da oben sollte erstmal tun Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.