Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Application.OnTime
#11
Hallo @RPP63,


Zitat:Mich würde ernsthaft interessieren, was Strg+Umschalt+Esc ergibt.
Status vor der Ausführung des "Application.OnTime"-Makros innerhalb der "Do..Loop"-Schleife:

[
Bild bitte so als Datei hochladen: Klick mich!
]
Status nach der Ausführung des "Application.OnTime"-Makros innerhalb der "Do..Loop"-Schleife:
[color=#333333][size=small][font=Tahoma, Verdana, Arial, sans-serif][
Bild bitte so als Datei hochladen: Klick mich!
]
Mit lieben Grüßen
Anton.

Windows 10 64bit
Office365 32bit
Antworten Top
#12
Hallo zusammen,

erstmal vielen Dank für Euren Input.

@Anton, da hast Du natürlich recht  Idea. Das erklärt, warum Excel bei allen Test schon recht merkwürdig reagiert hat. Damit ist das Ganze Thema eigentlich erledigt...

@RPP63, leider habe ich Anton's Bilder nicht gesehen. Ich habe mit Strg+Umschalt+Esc unterbrochen und ne CPU_Auslastung für Excel von 30% gesehen.

@RRP63, ich habe den kompletten Code als Datei angehängt. Bitte sei nachsichtig mit Kritik  23 .
Zum Aufbau:
Modul "A_Ablauf": Grobe Reihenfolge und Festlegungen aller statischen Variablen.
Modul "B_Vorbereitung": Öffnen der Ausgabedatei, einfügen des Datums und Festlegen der späteren Einfügebereiche.
Modul "C_SAP-Abfrage": Verbindung zum SAP herstellen und verschiedene Reports ziehen und als .xlsx-Dateien abspeichern.
Modul "D_Daten_Einlesen": Einlesen der Daten in Datenfelder.
Modul "E_SAP_Zusatzdaten": Nochmals Daten aus SAP ziehen.
Modul "F_Auswertung": Auswertung der Daten nach verschiedenen Kriterien.
Modul "G_Ausgabe": Ausgeba der gewonnenen Daten in die Ausgabedatei.
Modul "H_Mitarbeiter": Verarbeitung beigestellter Excel-Dateien zur Anwesenheit. 
Modul "I_Nachbereitung": Schließen sämtlicher geöffneter Dateien und SAP.
Modul "Y_Prozeduren": verschiedene Prozeduren, die den Ablauf noch unübersichtlicher machen würden.
Modul "Z_Fehlerbehebung": Abarbeitung möglicher Fehler.

Das Problem ist eigentlich das schon mehrfach gepostete SAP-Excel-Problem. Es tritt vermehrt (nicht immer und nicht ausschließlich) im Modil "E_SAP_Zusatzdaten" auf. In der Prozedur "B_MRPData_SAP" ziehe ich umfangreiche Daten und speichere sie als .xlsx-Datei. Diese Datei benötige ich in der Prozedur "C_MRPData_Einlesen".
SAP öffnet selbstständig die exportierte .xlsx-Datei. Das lässt sich auch nicht unterdrücken. Dazu wird (manchmal, nicht immer und für mich nicht nachvollziehbar) eine neue Excel-Instanz geöffnet.

Je nach Menge der Daten benötigt dieser Öffnungs-Prozess unterschiedlich lange. Und jetzt kommt mein Problem.
Über "Set WkbMRPData = GetObject(StrPfadDaten & "\" & StrMRPData)" öffne ich die Datei, sobald sie gespeichert wurde. SAP ist in seinem Ablauf scheinbar manchmal langsamer und öffnet die Datei erst später. Dann bekomme ich eine Fehlermeldung, dass die Datei bereits geöffnet ist.

Mein Gedanke war jetzt, dass ich meinen Ablauf so lange warten lasse, bis SAP die Datei geöffnet hat und erst dann darauf zugreife.
Daraus resultierte die erste Schleife:
Code:
Do
    Application.Wait (Now + TimeValue("0:00:10"))
Loop Until DateiGeoffnet = True
Allerdings scheint das Wait irgendwie alles zu verlangsamen. Die Datei wird von keinem der beiden Prozesse geöffnet. Breche ich den Code nach mehreren Schleifendurchläufen ab, erscheint die Datei. Warte ich länger mit dem Unterbrechen, erscehint die Datei trotzdem erst nach dem Unterbrechen.
Nächster Ansatz war die Application.OnTime-Variante, die aber natürlich nicht funktioniert, da der Code an sich ja nicht angehalten wird.

Nachdem ich kein Informatiker bin, weiß ich nicht, was da genau passiert und was ich dagegen tun kann. Bin aber für alle Tipps dankbar...

Vielen Dank,
Lutz


Angehängte Dateien
.xlsm   Makro Versandreporting Rev.19 Öffentlich.xlsm (Größe: 117,67 KB / Downloads: 2)
Antworten Top
#13
Hast du je von Querytables gehört ?
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#14
Hallo snb,

habe ich schon mal, aber Mangels wirklicher Kenntnis noch nie ernsthaft angewandt.

Wo sollte ich sie wie hier einsetzen?

Gruß,
Lutz
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste