Guten Tag miteinander,
hab das folgende Problem:
Hab das Problem, wenn ich auf mein Button klicke, CSV_abspeichern, dass er die Datei schließt, eine Temp Datei erstellt und dann ne CSV Datei erstellt und aufmacht, danach kommen die lästigen speicher fragen wenn man die datei speichern möchte.
Deshalb meine frage, wie kann ich den code so umbauen, dass er die csv datei nicht aufmacht und richtig abgespeichert hat?
Mit Leerzeichen Beachtung
mein code:
Private Sub CSV_abspeichern()
Dim sThisFile As String
Dim sCsvFile As String
Dim sTempfile As String
sThisFile = ThisWorkbook.FullName
sTempfile = Replace(sThisFile, ".xlsm", "_TEMP.xlsm")
ThisWorkbook.Save 'speichert aktuelle Arbeitsmappe
'kopiert gespeicherte Arbeitsmappe: ASCII_mit_Klartext.xlsm in TEMP_ASCII_mit_Klartext.xlsm
Dim fso As Object: Set fso = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
Call fso.deletefile(sTempfile, True) 'löscht die alte temp datei, falls sie existiert
On Error GoTo 0
Call fso.CopyFile(sThisFile, sTempfile, True)
'temp file wird geöffnet & als CSV abgespeichert
Dim wbTemp As Workbook
Set wbTemp = Workbooks.Open(sTempfile) 'temp datei wird in excel geöffnet
'vorheriger code wird als csv abgespeichert
Application.DisplayAlerts = False
Ergebnistabelle.SaveAs Filename:=Environ("UserProfile") & "\Desktop\Ergebnis.csv", FileFormat:=xlCSV, CreateBackup:=False, Local:=True
wbTemp.Close 'temp datei wird geschlossen, da csv datei erstellt
Application.DisplayAlerts = True
'temp datei wird gelöscht
On Error Resume Next
Call fso.deletefile(sTempfile, True) 'löscht temp file
On Error GoTo 0
MsgBox "Ihre Datei wurde erfolgreich als CSV abgespeichert! Sie finden Ihre Datei auf Ihrem Desktop mit dem Namen Ergebnis!"
End Sub
Danke im Vorraus für eure Antwort.
lg
|