Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1492to1496
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
Inhaltsverzeichnis

Brauche etwas Hilfe bei VB-Code MsgBox

Brauche etwas Hilfe bei VB-Code MsgBox
26.05.2016 15:45:20
Rolf
Hallo Forum
Habe das seit einiger Zeit nich mehr gemacht, und deswegen etwas probleme , das so hinzukriegen, dass es funktioniert.
Was ich will:
Zwei Abfragen hintereinander per MsgBox vb YesNo.
-Suche Zeile mit Text "VIK: Ohne VIK"
wenn Zeile vorhanden dann MsgBox "Zeile löschen?" vb YesNo
Wenn nein: nächste MsgBox
wenn Ja: Zeile löschen
nach 2 -ter MsgBox (mit anderer Zeile analog erster Box)
zu ende.
Ist zwar Word, aber ich denke, dass ich mit etwas hilfe auch eine Excel-COde dahiingehend anpassen kann, dass es funzt.
Hier mal mein (erbärmlicher) Versuch...
a = MsgBox("VIK: Ohne VIK entfernen?", vbYesNo, "Zeilen entfernen")
If a = vbNo Then GoTo weiter
Else
With Selection.Find
.Text = "VIK: Ohne VIK"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
End If
weiter:
b = MsgBox("Zusatzschild: Ohne Schild entfernen?", vbYesNo, "Zeilen entfernen")
If b = vbNo Then GoTo ende
Else
With Selection.Find
.Text = "Zusatzschild: Ohne Schild"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
End If
ende:
End Sub
Gruss
Rolf

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Brauche etwas Hilfe bei VB-Code MsgBox
26.05.2016 16:26:20
Daniel
Hi
Schreibe die IFs mal richig.
Wenn man nach dem THEN in der gleichen Zeile weiterschreibt, muss der ganze Code bis zum END IF (welches dann aber nicht mehr benötigt wird) in diese eine Zeile.
Das Goto brauchst du auch nicht. VBA springt beim IF-THEN auch ohne Gotos an die richtige Stelle.
Schreibs mal so:
a = MsgBox("VIK: Ohne VIK entfernen?", vbYesNo, "Zeilen entfernen")
If a = vbYes Then
With Selection.Find
.Text = "VIK: Ohne VIK"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
End If
b = MsgBox("Zusatzschild: Ohne Schild entfernen?", vbYesNo, "Zeilen entfernen")
If b = vbYes Then
With Selection.Find
.Text = "Zusatzschild: Ohne Schild"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
End If
End Sub

gruß Daniel

Anzeige
AW: Brauche etwas Hilfe bei VB-Code MsgBox
27.05.2016 07:55:26
Rolf
Hallo Daniel
Danke für deine Hilfe.
Hab das schon sooo lange nicht mehr gemacht :)
ELSE würde ich also nur dann brauchen, wenn ich bei Nein eine Aktion ausführen möchte, ansonsten kann man das weg lassen.
Und das mit dem notwendigen Zeilenumbruch nach THEN wusste ich bisher noch gar nicht, hab ich wohl intuitiv früher richtig gemacht.
Jedanfalls danke für deinen Code!
Schönes WE
Rolf

AW: Brauche etwas Hilfe bei VB-Code MsgBox
27.05.2016 08:09:23
Daniel
Nach dem IF kommt eine Prüfung. Diese kann WAHR oder FALSCH als Ergebnis haben.
Der Code, der nach THEN steht wird nur ausgeführt wenn die Prüfung WAHR ergibt, der Code nach ELSE wenn sie FALSCH ergibt.
Code nach END IF wird dann wider immer ausgeführt.
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige