Kajetan Geschrieben 5. Dezember 2003 Teilen Geschrieben 5. Dezember 2003 Hallo, ich habe folgendes Problem... - ich möchte leere Zeilen aus einer Excel Datei rauslöschen - Felder die nicht mit einer nummer > 2000 beginnen, aus der 1 Spalte, an eine andere Stelle Kopieren(spalte 4 eine Zeile davor) Ich habe leider wenig erfahrung mit VB ich hoffe mir kann geholfen werden, ich freue mich über jede helfende Antwort/Vorschläge: diese Datei hat ca 20 000 Zeilen Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
robotto7831a Geschrieben 5. Dezember 2003 Teilen Geschrieben 5. Dezember 2003 Hallo, unter Excel gibt es den Makrorekorder. Damit kannst Du Dir einzelne Schritte aufzeichnen. Der baut dann daraus ein VBA Modul. Vielleicht solltest Du damit mal anfangen und schauen was so in VBA passiert. Frank Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kajetan Geschrieben 5. Dezember 2003 Autor Teilen Geschrieben 5. Dezember 2003 Da kann ich nur kucken wie ich lösche, aber momentanes Problem is wohl, wie durchsuch ich alle Zeilen, das wär guter Ansatz, aber soetwas is hald mit Aufzeichnung nicht möglich der benutzt hier lediglich " ActiveCell.Select ". Sub Makro1() For Each rw In Worksheets(1).Cells(1, 1).CurrentRegion.Rows this = rw.Cells(1, 1).Value If this = @ Then rw.Delete Next End Sub @ = null, "", 0 ; bei @ hab ich null, "", und 0 probiert macht aber irgendwie nix aus geht trotzdem nicht. Worksheets is mir nicht ganz gehäuer mal kuckn.. Naja das hab ich bisher zusammengekriegt, haut aber ned hin thnx 4 info Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Cobol-Victim Geschrieben 5. Dezember 2003 Teilen Geschrieben 5. Dezember 2003 bastel doch eine schleife, etwa so: do x = x + 1 if cells(x, 1) = vbnullstring and cells(x, 2) = vbnullstring ... then rw.delete end if if cells(x, 1) < 2000 then cells(x, 4) = cells(x. 1) cells(x, 1) = vbnullstring end if loop until x = 20000 ich glaube so sollte es gehen, hab aber mit vb(a) nicht wirklich viel zu tun. erläuterung: - if cells(x, 1) = vbnullstring and cells(x, 2) = vbnullstring ... then rw.delete end if soll sagen wenn die zellen der row leer sind, lösche diese - if cells(x, 1) < 2000 then cells(x, 4) = cells(x. 1) cells(x, 1) = vbnullstring end if soll sagen wenn zelle 1 kleiner als 2000 ist dann ist zelle 4 = dem inhalt von zelle 1 ; zelle 1 wird geleert - loop until x = 20000 soll sagen, mach das bis du bei zeile 20000 angekommen bist. wie gesagt, bin nicht ganz fit in vba, lasse mich also gern verbessern Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kajetan Geschrieben 5. Dezember 2003 Autor Teilen Geschrieben 5. Dezember 2003 wär ja ned so schwer, aber ich kenn die Befehle ned .. so ein &%§§! Variablendeclaration in VB braucht DIM also Dim i as Integer .. nur so am Rand. Ich probier noch bischen. Das Cell(X,Y) einfach runterzählen geht glaub ich garnicht weil Cell eine Methode von Worksheets is. Aber wirklich weitergekommen bin ich noch nicht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Cobol-Victim Geschrieben 5. Dezember 2003 Teilen Geschrieben 5. Dezember 2003 sorry man, aber ich bin davon ausgegangen, dass ich sowas schnödes wie die deklaration nicht auch noch angeben muss! ich denke du solltest dir besser mal ein buch zur hand nehmen, die fehlen da offensichtlich ganz grundlegende begriffe in deiner programmiersprache! und runtergezählt wird absolut gar nichts in dem (pseudo)code. leider hab ich jetzt nicht die möglichkeiten dies zu testen, bin mir aber fast sicher, dass das so laufen sollte, zumindest ist es ziemlich nah dran. glaub ich jedenfalls Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kajetan Geschrieben 5. Dezember 2003 Autor Teilen Geschrieben 5. Dezember 2003 Hehe jau :WD des is auch nah dran bin ich mir sicher mercy für die Hilfe!! bin noch immer ganz Konfus weil ich keine ; am Ende einer Zeile machen muss aber langsam wirds schon :beagolisc Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
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.