Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

schleife

Forumthread: schleife

schleife
Michael
Hallo!
Habe versucht eine schleife zu erstellen!
Wenn in Spalte B zwei aufeinenderfolgende Zellen leer sind, soll er auf die darauffolgende Zelle hinspringen.
Wenn b1 bis b5 belegt sind durchläuft er die Zellen, prüft ob zelle b6 und b7 leer sind und geht dann wieder zurück auf b6. Ende
Verständissfrage
Wenn eine Zelle nicht gefüllt ist ist sie dann 0?
Wenn ich
Range("A65536").End(xlUp).Row
probiere und ich habe mich einmal vertan, springt er immer auf die Falsche Zelle. (letzte Zelle war 500 und ich lösche von 501 bis auf 300, dann sollte die letzte Zelle 300 sein, er gibt mir immer wieder Zelle 500 an)
Merkt sich Excel die zuletzt benutzte Zelle?
If Range("a" & b).Select IsEmpty(Zelle) Then
Warum durchläuft er immer die Schleife wenn ich Isempty(Zelle) benutze?
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: schleife
25.07.2009 13:37:06
BoskoBiati
Hallo Michael,
hast Du nach dem Löschen die letzte Zeile neu berechnet?
Was ist "Zelle"?
Select solltest Du hier tunlichst weglassen.
Ich denke der Vergleich ist sowieso falsch, entweder

if isempty(Range("A" & b)) then

oder

if cells(b,1)="" then
, wenn Du auf leere Zellen prüfst bzw.
 if  not isempty(Range("A" & b)) then
 if cells(b,1)"" then
, wenn Du auf Inhalt prüfst.
Gruß
Bosko
Anzeige
poste mal den kompletten Code ...
25.07.2009 13:37:33
Matthias
Hallo
... oder lad ein Beispiel hoch
Zitat:
(letzte Zelle war 500 und ich lösche von 501 bis auf 300, dann sollte die letzte Zelle 300 sein, er gibt mir immer wieder Zelle 500 an)
ich mach das so
Sub LoLetzte()
Dim lng As Long
lng = Range("A65536").End(xlUp).Row
MsgBox lng
End Sub
und die Zeile nach dem Löschen stimmt dann eigentlich auch
und was machst Du mit Select ?
If Range("a" & b).Select IsEmpty(Zelle) Then
was kommt nach Then ?
poste doch mal den kompletten Code der Schleife
Gruß Matthias
Anzeige
AW: poste mal den kompletten Code ...
25.07.2009 14:00:08
Michael
Danke für die schnelle Antwort!
Leider kann ich das Modul nicht mehr aufrufen, habe es vor Ärger gelöscht.
Im Endeffekt wollte ich genau das gleiche wie mit deiner Schleife erreichen! Wenn die Schleife zwei mal IsEmpty(Zelle) erreicht, sollte er abbrechen! Select hatte ich eingesetzt um zu wissen wo ich auf der Exceltabelle war.
Vielen Dank
Anzeige
hier mal ein Beispiel ...
25.07.2009 14:14:07
Matthias
Hallo
https://www.herber.de/bbs/user/63430.xls
und hier der Code als Text:
Sub SpA()
Dim Loletzte As Long, x As Long
Columns(1).Interior.ColorIndex = xlNone
Loletzte = Range("A65536").End(xlUp).Row
MsgBox "letzte Zelle = " & Loletzte
For x = 1 To Loletzte
If IsEmpty(Cells(x, 1).Offset(1, 0)) And IsEmpty(Cells(x, 1).Offset(2, 0)) Then
MsgBox "die nächsten beiden Zellen nach " & Cells(x, 1).Address(0, 0) & " sind leer"
Cells(x, 1).Interior.ColorIndex = 6
Exit For
End If
Next
End Sub
Gruß Matthias
Anzeige
AW: hier mal ein Beispiel ...
25.07.2009 14:32:06
Michael
danke!
hätte ich mich dumm und dämmlich versucht!
AW: hier mal ein Beispiel ...
25.07.2009 14:36:31
BoskoBiati
Hallo zusammen,
statt mit Offset zu arbeiten ginge auch das:
If IsEmpty(Cells(x+1, 1)) And IsEmpty(Cells(x+2, 1)) Then

;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige