Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
868to872
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
868to872
868to872
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA: "Do until Fehler" - möglich?

VBA: "Do until Fehler" - möglich?
23.05.2007 10:41:00
Sven
Ein Hallo an die Community :)
Ich hätte da eine kleine Frage:
Ist es möglich, in eine Do Schleife quasi eine Fehlerbehandlung einzubauen?
Momentan sieht mein Code so aus:

Sub testen()
On Error GoTo Line123
Do
Range("a1").Select
Cells.Find(What:="|", after:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).ClearContents
Loop
Line123: Exit Sub
End Sub


Ich hätte es aber gerne ohne Verweis auf eine andere Zeile.
z.B. so:


Sub testen()
Do Until "FEHLER"
Range("a1").Select
Cells.Find(What:="|", after:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).ClearContents
Loop
End Sub


Ist das möglich?
Dankeschön schonmal

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: "Do until Fehler" - möglich?
23.05.2007 11:58:00
Mac4
Hallo Sven,
so ganz erschliesst sich mir Dein Vorhaben nicht, aber versuchs mal so:

Sub testen()
dim finden as object
Range("a1").Select
set finden=Cells.Find(What:="|", after:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False)
If Not finden is nothing then
finden.ClearContents
End If
End Sub


Marc

AW: VBA: "Do until Fehler" - möglich?
23.05.2007 12:08:46
Sven
Hi Marc,
was ich vorhabe: ich möchte alle Zellen in der Spalte A löschen, in denen das Zeichen "|" vorkommt.
Deine Variante ist insofern gut, weil sie bei 'keinem Treffer' keinen Fehler ausgibt, jedoch wird damit auch nur eine Zelle und nicht alle gelöscht.
Noch ne Idee/Verbesserung?
Dank dir ;-)

Anzeige
AW: VBA: "Do until Fehler" - möglich?
23.05.2007 12:17:00
Mac4
Hallo Sven,
ok, dann so:

Sub testen()
Dim finden As Object, Treffer1 As String
Set finden = Cells.Find(What:="|", after:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False)
If Not finden Is Nothing Then
Treffer1 = finden.Address
Do
finden.ClearContents
Set finden = Cells.FindNext(finden)
Loop While Not finden Is Nothing
End If
End Sub


Marc

AW: VBA: "Do until Fehler" - möglich?
23.05.2007 13:30:35
Sven
Hi,
danke. So funktionierts.
Aber wozu du den 'Treffer1' hast, weißt du wohl auch selbst nicht, oder? ;-)
Grüße

Anzeige
AW: VBA: "Do until Fehler" - möglich?
23.05.2007 13:44:00
Mac4
Hi Sven,
hast Recht - das mach ich immer ganz automatisch (ist für die Fälle, in denen das Suchkrioterium nicht gelöscht wird und damit keine Endlosschleife ensteht) und habe es dann vergessen zu löschen.
Dann müsste die Loop While Zeile so aussehen:
Loop While Not finden Is Nothing And Treffer1 finden.Address
Marc

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige