2017-08-12 1 views
1

Ich möchte speichern Schaltfläche für mein Validierungsprogramm in VBA Excel.Ist es möglich, die Schaltfläche Speichern (nicht als Schaltfläche speichern) zu speichern, um das Dokument in einem bestimmten Pfad zu speichern?

Mit der Schaltfläche Speichern wird die Datei in einem speziellen Pfad gespeichert und automatisch in den Status des Dokuments (Clean oder Error) umbenannt.

Wenn das Dokument speichern wurde, wenn das Dokument noch Fehler, wird die Datei error.xlsm benannt wird

Aber, wenn ich den Fehler des Dokuments beheben. Das Dokument wird als clean.xlsm bezeichnet. Es nervt mich, die erste Datei (error.xlsm) manuell zu löschen.

Ist es möglich, Speichern Schaltfläche speichern (nicht als Schaltfläche speichern) zu speichern Dokument in bestimmten Pfad speichern ohne Speichern als?

Hier ist mein Code:

Private Sub CommandButton2_Click() 
ActiveWorkbook.SaveAs Filename:="D:\" & Sheets("C").Range("G23").Text & ".xlsm", _ 
FileFormat:=xlOpenXMLWorkbookMacroEnabled, Password:=vbNullString, WriteResPassword:=vbNullString, _ 
    ReadOnlyRecommended:=False, CreateBackup:=False 
    ActiveWorkbook.Close 
End Sub 

* Anmerkung: Sheets("C").Range("G23").Text enthält Status des Dokuments (sauber oder Fehler, wenn Formel)

Antwort

1

diesen einen Versuch geben ...

Private Sub CommandButton2_Click() 
Dim fName As String 
Application.DisplayAlerts = False 
fName = ActiveWorkbook.Sheets("C").Range("G23").Value 
ActiveWorkbook.SaveAs FileName:="D:\" & fName & ".xlsm", _ 
FileFormat:=xlOpenXMLWorkbookMacroEnabled, Password:=vbNullString, WriteResPassword:=vbNullString, _ 
    ReadOnlyRecommended:=False, CreateBackup:=False 
ActiveWorkbook.Close 
On Error Resume Next 
Select Case fName 
    Case "Error" 
     Kill "D:\Clean.xlsm" 
    Case "Clean" 
     Kill "D:\Error.xlsm" 
End Select 
End Sub 
+0

i habe es versucht, sir .. aber, es gibt immer noch 2 datei, (sauber und fehler). Ich möchte, wenn die Datei sauber ist, die Fehlerdatei, die zuvor gespeichert worden war, gelöscht automatisch .. – arifulromadhon

+0

kann es sein, wie die Datei umzubenennen, dann speichern Sie es ... – arifulromadhon

+0

Der Code speichert zuerst die Datei mit der Datei neuen Dateinamen gemäß die in G23 verfügbare Zeichenfolge und die andere Datei löschen. Ich habe den Code ausprobiert und es lief ohne ein Problem. – sktneer

Verwandte Themen