Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1216to1220
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

MsgBox Schleife verhindern bei Makro

MsgBox Schleife verhindern bei Makro
Aelsbeth
Hallo liebes Forum,
ich bastele immer noch weiter unter starker zur Hilfenahme Eurer Beiträge an meiner Datei.
Bin auch schon sehr weit gekommen :-)
Jetzt stellt sich ein kleines Problem:
Ich rufe beim Aktivieren eines Blattes eine MsgBox auf, die fragt, ob die Daten aktualisiert werden sollen. Wenn ja, springt das Ganze in ein anderes Modul und durchläuft da eine ellenlange Copy/Paste-Prozedur. Nur leider muss ich jetzt ungefähr 100 mal auf "Ja" klicken, damit es zu Ende geht :-( Wie kann ich dem Makro sagen, dass einmal "Ja" reicht?
Hier die MsgBox:

Private Sub Worksheet_Activate()
Auswahl = MsgBox("Das Datenblatt ist möglicherweise nicht mehr aktuell." & vbLf & "Sollen die    _
_
_
Daten aktualisiert werden?", vbQuestion + vbYesNo, "Planungsdaten aktualisieren")
If Auswahl = vbYes Then
RBaktu
End If
End Sub
Und hier das Makro im Modul:
'Raumbuch aktualisieren und Zeilen mit "0" löschen
Sub RBaktu()
Dim RQ As Integer
Worksheets("Planungsdetails").Activate
ActiveSheet.Unprotect "HBB"
letzte1 = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
Range(Cells(5, 1), Cells(letzte1, 1)).EntireRow.Delete
Application.ScreenUpdating = False
Projekt
Vorbereiten
'Zeilen mit Nullwert löschen
letzte2 = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
For RQ = letzte2 To 13 Step -1
If Cells(RQ, 14).Value = "0" Then Rows(RQ).Delete
Next RQ
Application.ScreenUpdating = True
ActiveSheet.Protect "HBB", DrawingObjects:=True, Contents:=True, Scenarios:=True,  _
userinterfaceonly:=False
Unload Warten
Cells(10, 2).Activate
End Sub
Hinter "Projekt" und "Vorbereiten" verstecken sich jede Menge Copy/Pastes
Bin für jeden Tipp dankbar :-)
LG Aelsbeth

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

Betreff
Benutzer
Anzeige
AW: MsgBox Schleife verhindern bei Makro
13.06.2011 14:11:37
ransi
Hallo
Teste mal:
Sub RBaktu()
Dim RQ As Integer
Worksheets("Planungsdetails").Unprotect "HBB"
letzte1 = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
Range(Cells(5, 1), Cells(letzte1, 1)).EntireRow.Delete
Application.ScreenUpdating = False
.
.
.
ransi
AW: MsgBox Schleife verhindern bei Makro
13.06.2011 14:18:28
Aelsbeth
Funzt leider nicht :-(
Ich muss den Finger auf der Return-Taste lassen. Irgendwo hakt es.
Select und Activate
13.06.2011 14:38:29
ransi
HAllo
Irgendwo in deinem Code wird immer wieder das Sheet("Planungsdetails") aktiviert.
Immer wenn das geschieht kommt die MSGBOX.
Die Stelle musst du finden und ändern.
Schau dir zum Thema select und activate auch mal dies an:
http://www.online-excel.de/excel/singsel_vba.php?f=78
ransi
Anzeige
AW: MsgBox Schleife verhindern bei Makro
13.06.2011 14:40:19
Gerd
Hallo Aelsbeth,
schreibe im Worksheet_Activate als erste Zeile
Application.EnableEvents=False
und als letzte Zeile vor End Sub
Application.EnableEvents=True
Gruß Gerd
AW: MsgBox Schleife verhindern bei Makro
13.06.2011 15:02:45
Aelsbeth
@ransi: Danke, das klärt es auf. Nur leider brauche ich das Hin-und-Her-Aktivieren für Copy/Paste von einem Blatt zum anderen in vielen Unterschritten (ist wirklich etwas komplexer)
@Gerd: Toll, das hat´s gebracht :-)
Danke Euch und schöne Restpfingsten noch.
LG Aelsbeth

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige