Makro macht mehr als es soll

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox


Excel-Version: 9.0 (Office 2000)
nach unten

Betrifft: Makro macht mehr als es soll
von: Wolfgang
Geschrieben am: 10.07.2002 - 09:14:47

Hallo Leute,
schaut Euch doch bitte mal dieses Makro an:

Sub Suchen_Löschen()
Dim Zelle As Range
Dim intCounter As Integer
Dim Suchbegriff As Variant
Suchbegriff = Range("B1").Value
For intCounter = 2 To Worksheets.Count
With Worksheets(intCounter)
Set Zelle = .Cells.Find(what:=Suchbegriff, after:=.Range("A1"), LookIn:=xlValues, lookat:=xlWhole)
End With
If Not Zelle Is Nothing Then
Application.Goto Zelle
If MsgBox("Löschen ???", vbYesNo, vbYes) Then
Rows(Zelle.Row).Delete
End If
End If
Next intCounter
End Sub

Warum löscht es die Zeile auch dann, wenn ich auf der MsgBox "nein" klicke?

Grüsse
Wolfgang

nach oben   nach unten

Re: Makro macht mehr als es soll
von: Ralph P.
Geschrieben am: 10.07.2002 - 09:17:45

Hallo Wolfgang
Versuche es mal so:
If MsgBox("Löschen ???", vbYesNo, vbYes) = vbYES Then
Rows(Zelle.Row).Delete
Else
End If

Gruß Ralph

nach oben   nach unten

Re: Makro macht mehr als es soll
von: Hans W. Herber
Geschrieben am: 10.07.2002 - 09:18:04

Hallo Wolfgang,

wie folgt:
If MsgBox("Löschen ???", vbYesNo, vbYes) = vbYes Then

hans

nach oben   nach unten

Re: Makro macht mehr als es soll
von: Wolfgang
Geschrieben am: 10.07.2002 - 09:21:55

Danke,

an Euch beide für die schnelle Antwort.
Vielleicht sollte ich mir doch mal ne neue Brille verpassen lassen.

Schonen Tag noch...

Wolfgang


nach oben   nach unten

Re: Makro macht mehr als es soll
von: TOM
Geschrieben am: 10.07.2002 - 09:21:59

Hallo Wolfgang

Mein Vorschlag:

Sub Suchen_Löschen()
Dim Zelle As Range
Dim intCounter As Integer
Dim Suchbegriff As Variant
Suchbegriff = Range("B1").Value
For intCounter = 2 To Worksheets.Count
With Worksheets(intCounter)
Set Zelle = .Cells.Find(what:=Suchbegriff, after:=.Range("A1"), LookIn:=xlValues, lookat:=xlWhole)
End With
If Not Zelle Is Nothing Then
Application.Goto Zelle
If (MsgBox("Löschen ???", vbQuestion + vbYesNo)) = vbYes Then
Rows(Zelle.Row).Delete
End If
End If
Next intCounter
End Sub

dann müsste es gehn.........

Gruss aus der Schweiz
TOM

nach oben   nach unten

Re: Makro macht mehr als es soll
von: Wolfgang
Geschrieben am: 10.07.2002 - 09:23:36

Nochmals Danke an alle.

 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Checkbox in Zelle"