Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
400to404
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
400to404
400to404
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Do while

Do while
Frank
Hallo,
ich folgenden Ausschnitt aus einem Makro:
'Striche einfügen
Range("B10").Select
Do While ActiveCell.Value > ""
If ActiveCell.Borders(xlEdgeBottom).LineStyle = xlNone Then _
ActiveCell.Borders(xlEdgeBottom).Weight = xlThin
ActiveCell.Offset(1, 0).Select
Loop
Wenn in der aktiven Zelle kein Strich ist, dann soll einer eingefügt werden.
Das Makro bricht mit der Meldung "Typen unverträglich" ab. Ich weiß nicht wieso,
zumal das Makro auch manchmal durchläuft. Wie gesagt, dies ist nur ein Teil des
Makros.
Gruß
Frank

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Do while
harry
hi frank,
der ausschnitt funkt ohne probleme. du musst das makro mit f8 schritt für schritt durchgehen, die fehlermeldung kann sich auch auf einen anderen teile des codes beziehen.
liebe grüße,
harry
AW: Do while
Genie
Na ja, vielleicht steht in der betreffenden Zelle zufällig mal eine Zahl (und keine Zeichenkette). Den Fall müßtest Du eben noch rausfiltern. Oder mit IsEmpty arbeiten:
In der Hilfe zu IsEmpty steht:
Set aktuelleZelle = Worksheets("Tabelle1").Range("A1")
Do While Not IsEmpty(aktuelleZelle)
Set nächsteZelle = aktuelleZelle.Offset(1, 0)
' If nächsteZelle.Value = aktuelleZelle.Value Then
' aktuelleZelle.EntireRow.Delete
' End If
Set aktuelleZelle = nächsteZelle
Loop
Da brauchst Du den (von mir) auskommentierten Teil nur durch Dein Coding zu ersetzen und die Startzelle anzupassen.
Viel Glück!
Anzeige
AW: Do while
Frank
Hallo,
ich habe festgestellt, das das Makro in der Zelle abbricht, in der der Fehlerwert # Bezug
steht. Wie löse ich dieses Problem ?
Gruß
Frank
AW: Do while
harry
setze den cursor in eine solche zelle und kopier die folgende

Sub in ein modul und starte es.

Sub test1()
MsgBox CStr(ActiveCell)
End Sub

die msgbox zeigt dir den wert der zelle an
dann einfach
Do While ActiveCell.Value > "" or ActiveCell.Value = Cstr(WAS IN DER MSGBOX STEHT)
liebe grüße,
harry
AW: Do while
Frank
Hallo Harry,
danke für deine Antwort. Der Wert in MsgBox ist 2023. Diesen Wert habe ich dann auch
eingesetzt:
'Striche einfügen
Range("B10").Select


Do While ActiveCell.Value > "" Or ActiveCell.Value = CStr(2023)
If ActiveCell.Borders(xlEdgeBottom).LineStyle = xlNone Then _
ActiveCell.Borders(xlEdgeBottom).Weight = xlThin
ActiveCell.Offset(1, 0).Select
Loop
Ich bekomme aber noch die Meldung "Typen unverträglich".
Gruß
Frnak
Anzeige
AW: Do while
harry
versuch
Do While ActiveCell.Value > "" Or CStr(ActiveCell.Value) = "2023"
oder
Do While ActiveCell.Value > "" Or ActiveCell.Value = CStr("2023")
AW: Do while
Frank
Hallo Harry,
ich habe beides probiert, aber leider klappt es nicht. Danke für deine Be-
mühungen.
Gruß
Frank

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige