Veröffentlicht 2. Juni 200619 j 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!
2. Juni 200619 j 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.
2. Juni 200619 j Autor 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?
2. Juni 200619 j 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
2. Juni 200619 j Autor Nun kommt es zu folgender Fehlermeldung: Laufzeitfehler '1004': Anwendungs- oder Objektdefinierter Fehler
7. Juni 200619 j Dann vielleicht mit sTmp =Workbooks("arbeitsaufwand").Sheets("Übersicht").Range("A" + lIndex).Value
9. Juni 200619 j 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
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.