Wie kann ich das Format von xlsm
zu xlsx
ändern. Ich brauche ein Skript, das eine Kopie der Datei xlsm
mit der Erweiterung xlsx
speichert, aber den Benutzer nicht zur Eingabe des Dateinamens auffordert, der ursprüngliche Name muss beibehalten werden, das einzige, was der Benutzer tun muss, ist auszuwählen, wo er gespeichert werden soll Datei.Wie konvertiert man von xlsm zu xlsx mit dem gleichen Namen
Antwort
Ich denke, Sie möchten nur eine .xlxs Kopie hinzufügen nicht über Ihre Makro-fähigen Arbeitsmappe schreiben. Versuchen Sie die folgende Codezeile, es sollte funktionieren, legen Sie Ihren Arbeitsmappennamen in "Arbeitsmappenname hier eingeben", die Datei, die geöffnet bleibt, wird die XLSX-Datei sein.
Application.ScreenUpdating = False
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=ActiveWorkbook.Path & "\" & "Put Workbook Name here" & ".xlsx", FileFormat:=51, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Application.DisplayAlerts = True
Application.ScreenUpdating = True
ja das funktioniert super! es hat die Kopie erstellt, die ich brauchte, die einzige Sache ist, dass es automatisch im selben Ordner wie das Original speichert. wie kann ich es ändern, so fordert mich zu wählen, wo möchte ich es speichern? ist das möglich –
Ersetzen Sie "Activeworkbook.Path" mit "C: \ Folder \ SubFolder \" mit den Zitaten. Ersetzen Sie die Namen der Laufwerkbuchstaben, Ordner und Unterordner durch die Position, an der Sie die Datei speichern möchten. – GMalc
Sie benötigen FolderPicker Funktion zu erstellen:
Sub changeext()
Dim objFolder As Object, objFSO As Object
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(ChooseFolder)
ThisWorkbook.SaveCopyAs Filename:=objFolder & "\" & Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 4) & "xlsx"
End Sub
Function ChooseFolder() As String
Dim fldr As FileDialog
Dim sItem As String
Set fldr = Application.FileDialog(msoFileDialogFolderPicker)
With fldr
.Title = "Select a Folder to save down the copy of this workbook"
.AllowMultiSelect = False
.InitialFileName = strPath
If .Show <> -1 Then GoTo NextCode
sItem = .SelectedItems(1)
End With
NextCode:
ChooseFolder = sItem
Set fldr = Nothing
End Function
Danke, dieser Code ist großartig! es tut genau das, was ich brauche, aber nicht sicher, warum ich eine Fehlermeldung bekomme, wenn ich versuche, die neue Datei zu öffnen. es heißt "Excel kann die Datei" filename.xlsx "nicht öffnen, da das Dateiformat oder die Dateierweiterung nicht gültig ist. Überprüfen Sie, ob die Datei nicht beschädigt ist und ob die Dateierweiterung mit dem Format der Datei übereinstimmt." Ich bin mir nicht sicher, wie dieses Problem gelöst werden kann. –
Weil a. wird benötigt, bevor "xlsx" es in ".xlsx" ändert – GMalc
- 1. Python - Mehrere XLSX/XLSM zu CSV
- 2. VBA Erstellen eines Excel .xlsm vs .xlsx
- 3. Analysieren xls/xlsx/xlsm in Node.js
- 4. Optionsfelder mit dem gleichen Namen wie Array
- 5. Wie isoliert man zwei C++ Klassen mit dem gleichen Namen?
- 6. Wie löst man zwei Strukturen mit dem gleichen Namen auf?
- 7. Wie konvertiert man xls mit Python in xlsx?
- 8. Sellerieaufgaben mit dem gleichen Namen
- 9. Wie wählt man Variablen (nicht Text) mit dem gleichen Namen?
- 10. Jackson Parser Behandlung von multiplefield Namen mit dem gleichen Namen
- 11. Separate Array-Elemente mit dem gleichen Namen
- 12. Wie zwei Bedenken mit dem gleichen Namen zu verwenden?
- 13. Poi: Speichern einer Excel-Datei als xlsx nach dem Öffnen von xlsm
- 14. Concat Objekt-Array mit dem gleichen Namen
- 15. Wie konvertiert man Zeichenketten in Zahlen, wenn Daten von .csv zu .xlsx, mit openpyxl
- 16. Wie Methode von Eltern und Kind mit dem gleichen Namen
- 17. Convert von CSV in XLSX und speichern mit dem gleichen Dateinamen
- 18. JPA verbinden Fremdschlüssel mit dem gleichen Namen
- 19. Merge Datenrahmen Zeilen mit dem gleichen Namen
- 20. JDBC Mehrere Spalten mit dem gleichen Namen
- 21. Android gradle Module mit dem gleichen Namen
- 22. Namespace und Klasse mit dem gleichen Namen?
- 23. Postgres: zwei Wörterbücher mit dem gleichen Namen
- 24. mehrere laravel hochladen mit dem gleichen Namen
- 25. Windowactivate drei Fenster mit dem gleichen Namen
- 26. Jython überschreiben Methode mit dem gleichen Namen
- 27. Importieren Sie Klassen mit dem gleichen Namen
- 28. Linq to XML: Zurückgeben Attribute von den Kindern mit dem gleichen Namen und Eltern mit dem gleichen Namen
- 29. Konstruktorargument und Member mit dem gleichen Namen
- 30. Sockel & Zugang zu vielen Klasse mit dem gleichen Namen
was sind die genauen Probleme, die Sie haben werden? –
mein Code fordert zur Eingabe des Namens der neuen Datei auf, ich muss sicherstellen, dass automatisch der Name der ursprünglichen xlsm-Datei eingegeben wird. Der Benutzer sollte die Datei nicht umbenennen können. –
siehe meine Antwort unter –