2017-07-11 3 views
1

Ich habe ein Excel-Makro, das eine TXT-Datei erstellt, das Dialogfeld Speichern unter öffnet und den Dateinamen ausfüllt. Ich kann jedoch nicht herausfinden, wie Sie die Eingabetaste im Dialogfeld "Speichern unter" drücken.Wie man in VBA in Dialogfeld eingibt?

Ich habe versucht, SendKey Eingabe zu verwenden, aber es scheint nicht zu funktionieren.

Hier ist die Unterseite meines Makros jetzt.

Jede Hilfe wäre sehr willkommen!

+3

Sie würden nur 'GetSaveAsFilename' verwenden, wenn der Benutzer den Dateinamen/Pfad eingeben soll (in diesem Fall würden Sie nicht programmgesteuert die Eingabetaste drücken). Wenn Sie den Namen/Pfad kennen, rufen Sie einfach die 'SaveAs' Methode auf. – ThunderFrame

Antwort

2

Danke für die Antwort ThunderFrame! Ich habe das Ende meines VBA-Codes in das folgende geändert und es hat funktioniert!

Application.DisplayAlerts = False 
file_loc = some path that I have 
wb.SaveAs Filename:=file_loc, FileFormat:=xlText 
wb.Close 
Application.DisplayAlerts = True 
Application.ScreenUpdating = True 

unbedingt die Application.DisplayAlerts = False setzen das Popup zu deaktivieren „Sind Sie sicher, dass Sie diese Datei speichern?“

+1

ja, 'DisplayAlerts' hilft. Aber speichern Sie den * aktuellen * Wert von DisplayAlerts in einer Variablen und dann * restore * auf diesen Wert. Sie werden das sicherer finden, wenn anderer Code DisplayAlerts absichtlich auf False gesetzt hat, nur wenn Ihr Code ihn explizit auf "True" zurücksetzt, unabhängig davon, was er zu Beginn der Prozedur war. – ThunderFrame

+0

Wenn 'file_loc' nur der Pfad ist, müssen Sie nicht auch den tatsächlichen Dateinamen innerhalb des Pfades angeben? – YowE3K

+0

@ThunderFrame guten Ruf! Ich werde das machen. – Naomi

Verwandte Themen