2017-07-07 1 views
0

Ich habe ein Bedürfnis, ein Makro in Excel 2010 zu erstellen, das im Grunde kontinuierlich ausgeführt wird (gestartet durch Schaltfläche oder gestoppt durch Schaltfläche), die in einen Dateiordner schaut. Wenn dort eine Datei erstellt und benannt wird, öffnet das Makro sie und verarbeitet die Daten darin. Die Datei wird dann geschlossen und gelöscht. Das Makro fährt dann fort, um den Dateiordner zu beobachten, damit mehr Dateien verarbeitet werden.Excel 2010 VBA - Kontinuierlich in Ordner suchen für Datei zu verarbeiten?

Ist das ein vernünftiger/machbarer Makro, den ich in Excel mit VBA erstellen könnte? Kann VBA kontinuierlich ohne Probleme laufen?

Mit freundlichen Grüßen Andy

+1

Ja, es ist machbar mit einer 'Application.OnTime' Schleife. Probieren Sie es :) –

+1

Die kurzen Antworten auf Ihre Fragen sind ja und ja. Dies ist jedoch kein kostenloser Code-Schreibdienst. Wir helfen Ihnen gerne bei Problemen, die Sie mit Code, den Sie bereits geschrieben haben, haben. Ich würde vorschlagen, in der "Application.OnTime" [Methode] (https://msdn.microsoft.com/en-us/vba/excel-vba/articles/application-ontime-method-excel) zu suchen. – Soulfire

+0

Danke für die Beratung Jungs! – Andy

Antwort

0

Nimmt Ihr Programm ständig wechselnde Daten aus der Excel-Tabelle? Wenn nicht, würde ich empfehlen, das Programm in einer anderen Sprache zu erstellen und in einer Endlosschleife zu laufen, die Ihren Code und die Funktion sleep() enthält. Wenn ja, dann würde ich empfehlen, das Arbeitsblatt Änderungsereignis verwenden, und Sie können das Arbeitsblatt nicht bearbeiten, während ein Makro ausgeführt wird (auch wenn Sie den Schlaf verwenden/wait Befehl in VBA)

Dieser Link auch als hilfreich erweisen könnte: How to get VBA Macro to run continuously in the background?

0

siehe diesen Thread für einige Ideen:

https://superuser.com/questions/226828/how-to-monitor-a-folder-and-trigger-a-command-line-action-when-a-file-is-created

die erste Antwort wahrscheinlich wird es tun, nur die Excel-Makro auslösen Sie das wollen. Sie können mit der Ausführung so originell wie Sie wollen. Die Application.ontime-Funktion funktioniert nur, wenn Excel geöffnet ist, glaube ich.

Was Sie wollen, ist eine Möglichkeit, den Ordner ständig zu überwachen.

Verwandte Themen