webentwicklung-frage-antwort-db.com.de

VBA workbooks.Schließen, ohne gefragt zu werden, ob der Benutzer speichern möchte?

Ich schreibe ein VBA-Programm, das .xls-Dateien in .csv-Dateien konvertiert. Das Problem ist, dass das Dialogfeld "Do you want to save the changes to myFile.csv?" angezeigt wird.

Hier ist ein Ausschnitt meines Codes:

currentBook.SaveAs Filename:=fileNameS, FileFormat:=xlCSV, ConflictResolution:=xlLocalSessionChanges    
currentBook.Close SaveChanges:=False

Was muss ich hinzufügen, damit ich nicht die Meldung bekomme "Möchten Sie die Änderungen in myFile.csv speichern?" Dialogbox?

12
power

Versuchen Sie es mit ThisWorkbook.Saved = True

        Application.DisplayAlerts = False
        currentBook.SaveAs Filename:=fileNameS, FileFormat:=xlCSV, ConflictResolution:=xlLocalSessionChanges
        currentBook.Saved = True            
        currentBook.Close SaveChanges:=False
        Application.DisplayAlerts = True
15
Alistair Weir

Das habe ich in der Vergangenheit gemacht und es hat für mich funktioniert:

Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs Filename:=fileNameS, FileFormat:=xlCSV, conflictResolution:=xlLocalSessionChanges
Application.DisplayAlerts = True
ActiveWorkbook.Close False

Sie können auch versuchen, das Schließen zu setzen, bevor die DisplayAlerts auf true zurückgesetzt werden.

2
Dan
Set XC = NTSGetExcell(True)
XC.Visible = True
XC.Application.DisplayAlerts = False
XC.IgnoreRemoteRequests = True
XC.ActiveWindow.Close False
XC.Quit
Set XC = Nothing
1
user3048858