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

Schrittweise Abarbeitung

Schrittweise Abarbeitung
13.03.2015 16:01:35
Werner
Hallo VBA-Profis,
ich hätte da zwei Fragen zur "schrittweisen" Abarbeitung eines Makros.
1. Ich kenne die Funktion, Haltepunkt zu setzen, und habe das auch recht gut im Griff. Machmal werden dann Funktionen aufgerufen, um einen "Service" zu erbringen (z. B. Umrechnung einer Spalten-Nummer in den Spalten-Buchstaben). Auch diese Funktion wird nun schrittweise abgearbeitet. Was kann ich machen, dass diese Funktion nun nicht mehr schrittweise abgearbeitet wird, wohl aber das aufrufende Makro nach der Rückkehr aus dem Funktions-Code. Wenn ich innerhalb des Funktion-Codes die F5-Taste drücke, ist mein "Einzelschritt", auch im aufrufenden Code ausgeschaltet.
2. Ich habe ein Makro, welches sich in einem Workbook mit einem einzigen Blatt befindet, welches außerdem ausgeblendeten ist. Dieses Makro wird durch die Open_Workbook-Routine gestartet.
In dem Makro gibt es 2 Eingabe-Möglichkeiten: Application.FileDialog(msoFileDialogFilePicker) und Application.FileDialog(msoFileDialogFolderPicker). Während diese beiden Funktionen auf eine Eingabe von mir warten, ist ein Umschalten auf den VBE nicht möglich. Und der Rest vom Makro läßt sich nicht unterbrechen. Kann ich trotzdem irgend wie in den Ablauf über den VBE eingreifen?
Mit dem Makro werden Daten ermittelt (aus welcher Datei wird über den FilePicker-Dialog angefordert) und extern gespeichert (wohin, wird über den FolderPicker-Dialog angefordert).
Wenn ich die Dialog-Aufforderung mit "Abbrechen" verlasse, wird das Workbook automatisch geschlossen.
Vielen Dank im Voraus und ein schönes Wochenende
Werner (der aus dem Schwabenland)

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

Betreff
Datum
Anwender
Anzeige
AW: Schrittweise Abarbeitung
13.03.2015 16:26:31
Michael
Hi Werner,
1. in VBE stehen unter "Debuggen" weitere Kürzel, u.a. "Prozedurschritt", probier die aus, ansonsten setz nen Haltepunkt direkt nach dem Aufruf, dann kannst mit F5 weiter.
2. Du willst was ändern, kommst aber nicht mehr rein? Stecke während der Entwicklung ne msgbox an den Anfang, dann kommst Du mit Strg-Break in den VBE.
Also: Deaktiviere die Makros, öffne das file, ändere, was zu ändern ist, speichere, aktiviere die Makros wieder.
Schöne Grüße,
Michael

AW: Schrittweise Abarbeitung
13.03.2015 17:24:00
Werner
Hallo Michael,
Danke für Deine Infos.
Beide Punkte sind gelöst!

Punkt 1: es ist nicht "Prozedurschritt" sondern "Prozedur abschließen". Bisher dachte ich immer, dass dann die Unter-Routine abgebrochen wird. Dem ist aber nicht so.
Punkt 2: Strg + Break (Pause) funktioniert auch bei den beiden Filedialog-Eingaben. Aus .Show erhalte ich die Kontrolle mit dem Wert 1:
If .Show = -1 Then
XlsDataset = .SelectedItems(1)
Else
Abbruch = True
Exit Sub
End If
Gruß
Werner

Anzeige
freut mich...
14.03.2015 11:55:52
Michael
... und danke für die Rückmeldung.
Klar, da hab ich nicht weitergedacht: ^Break geht immer, wenn das Programm auf Eingaben wartet.
In dem Zusammenhang möchte ich noch erwähnen, daß X ab 2007 ja leider nicht mehr so einfach wie vorher mit Makros umgeht: das alte Fenster mit "Makro ausführen oder nicht?" ist in der Form ja nicht mehr da.
Ich schnüffle bei manchen Makros rum, ob die auch in LibreOffice gehen (und, sagen wir, "vieles" geht auch), aber es ist ganz nützlich, "was" in LO zu öffnen, da ist nämlich der Dialog in der alten Form vorhanden. Allerdings speichert LO keine Änderungen in VBA-Makros!
Mit "was" meine ich fremde Makro-files, um auf die Schnelle zu sehen, ob da was Ungutes drinsteckt - man spart sich halt den Akt, die Makros immer aus- und wieder anzuschalten.
Frohes Schaffen,
Michael
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige