Ich versuche, einen vba-Code zu schreiben, der eine Codezeile an die Eingabeaufforderung sendet und diese ausführt. Ich habe diesen Teil unten, aber ich benötige Hilfe, um den tatsächlichen Code zum Arbeiten zu erhalten.
Ich möchte alle Dateien in einem bestimmten Ordner mit der Dateierweiterung .doc auflisten, aber die ersten drei Zeichen des Dateinamens, die in meiner ausgegebenen Textdatei gedruckt werden, ausschließen. (Hinweis: Ich verwende vba, da dies einer von mehreren verschiedenen Befehlen ist, die ich in ein einziges vba-Makro integrieren möchte. Batchdateien sind für mich blockiert, daher möchte ich direkt mit der Eingabeaufforderung arbeiten.)
Der folgende Code funktioniert und gibt mir die Dateinamen ohne die Dateierweiterung (dh ABC201704.doc wird als ABC201704 zurückgegeben )
%comspec% /c for %i in (C:\Test\ABC*.doc) do @echo %~ni >> C:\Test\Output.txt
Ich weiß jedoch nicht, wie ich das ändern soll, damit es nicht die ersten 3 Zeichen enthält (dh es würde 201704 anstelle von ABC201704 zurückgeben ). Jede Hilfe wäre sehr dankbar! Ich habe versucht, den folgenden Link zu verwenden, aber ich konnte nicht herausfinden, wie das für meine Situation funktioniert.
quelle
%comspec% /k test.cmd
stattdessen