Application.Dialogs(xlDialogSaveAs) Namen vorgeben

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Application.Dialogs(xlDialogSaveAs) Namen vorgeben
von: Andreas
Geschrieben am: 30.11.2015 15:30:29

Hallo zusammen,
ich habe vor einiger Zeit eine Excel-Datei erstellt, die einige Text-Dateien importiert, bestimmte Daten berechnet und daraus ein Diagramm erstellt.
Am Schluss soll die Datei unter einem Namen aus einer Zelle abgespeichert werden.
Unter Excel 2003 funktionierte das auch einwandfrei.
Nach und nach wurde alles auf 2010 umgestellt und jetzt wird mir der Name im Speichern-Dialog nicht mehr angezeigt.
Ich weiß nicht wo der Fehler liegt. Hier mal der Code:

Sub Speichern_unter()
Ort = Sheets(2).Range("H1")
If Len(Ort) = 0 Then
MsgBox ("Ungültiger Dateiname: Die angegebene Zelle darf nicht leer sein!")
Else
Application.Dialogs(xlDialogSaveAs).Show (Ort & ".xls")
End If
End Sub

Der Name steht auch weiterhin in der angegebenen Zelle. Trotzdem wird er nicht angezeigt.
Über eine Antwort würde ich mich sehr freuen.
Gruß
Andreas

Bild

Betrifft: AW: Application.Dialogs(xlDialogSaveAs) Namen vorgeben
von: Rudi Maintaire
Geschrieben am: 30.11.2015 15:49:00
Hallo,
anscheinend wird nur xlsx akzeptiert.
Gruß
Rudi

Bild

Betrifft: AW: Application.Dialogs(xlDialogSaveAs) Namen vorgeben
von: Rudi Maintaire
Geschrieben am: 30.11.2015 15:49:55
Hallo,
oder lass die Endung weg.
Application.Dialogs(xlDialogSaveAs).Show Ort
Gruß
Rudi

Bild

Betrifft: AW: Application.Dialogs(xlDialogSaveAs) Namen vorgeben
von: Luschi
Geschrieben am: 30.11.2015 20:41:03
Hallo Andreas,
meine Application.Dialogs(xlDialogSaveAs).Show haben folgendes ergeben:
Application.Dialogs(xlDialogSaveAs).Show ort & x, y
setze für x bzw. y Folgendes ein:


x           y
-----------------------
"*.xls"     1 oder 18
"*.xlt"     17
"*.xlsx"    51
"*.xlsm"    52
"*.xltm"    53
"*.xltx"    54
"*.xlam"    55
"*.pdf"     56
Gruß von Luschi
aus klein-Paris



Bild

Betrifft: AW: Application.Dialogs(xlDialogSaveAs) Namen vorgeben
von: Andreas
Geschrieben am: 01.12.2015 07:13:54
Hallo Luschi,
das war leider nicht des Rätsels Lösung.
Es wird mir weiterhin kein Name vorgegeben, obwohl er ja in der Zelle vorhanden ist.
Bei Excel 2003 ist alles OK, in der 2010 Version funktioniert es nicht mehr.
Gruß
Andreas

Bild

Betrifft: AW: Application.Dialogs(xlDialogSaveAs) Namen vorgeben
von: Luschi
Geschrieben am: 01.12.2015 08:08:25
Hallo Andreas,
ich habe es mit Excel 2010 noch mal getestet. Wenn in der Variablen 'ort' der Lw + Pfad + Dateiname steht, dann genügt auch das:
ort = "d:\daten\test\meineDatei.xls"
Application.Dialogs(xlDialogSaveAs).Show ort, 1
oder
Application.Dialogs(xlDialogSaveAs).Show ort, 18
Userbild
Gruß von Luschi
aus klein-Paris

Bild

Betrifft: AW: Application.Dialogs(xlDialogSaveAs) Namen vorgeben
von: Andreas
Geschrieben am: 01.12.2015 09:04:20
Hallo Luschi,
danke für Deine Hilfe, aber leider klappt es nicht.
Excel macht keine Anstalten den vorgegebenen Namen aus der Zelle anzunehmen.
Die Dateiendung muss nicht zwingend .xls sein. Bloß als die Vorlage erstellt wurde, war die Version 2010 sehr selten in der Firma.
In der 2003er Version wurde als Pfad der Ordner angezeigt, aus dem ursprünglich die Text-Dateien importiert wurden. Das war auch super.
Und jetzt zeigt er den Pfad der Vorlage an und den Namen aus der vorgegebenen Zelle ignoriert er.
Ich bin leider kein VBA-Profi, deshalb suche ich hier nach Hilfe.
Gruß
Andreas

Bild

Betrifft: AW: Application.Dialogs(xlDialogSaveAs) Namen vorgeben
von: Luschi
Geschrieben am: 01.12.2015 12:43:06
Hallo Andreas,,
man kann es auch so machen:
'erzeugt die Datei 'aaa.xls'
ort = "c:\daten\test\aaa"
Application.Dialogs(xlDialogSaveAs).Show ort, 1
'erzeugt die Datei 'aaa.xls'
ort = "c:\daten\test\aaa"
Application.Dialogs(xlDialogSaveAs).Show ort, 18
'erzeugt die Datei 'aaa.xlsx'
ort = "c:\daten\test\aaa"
Application.Dialogs(xlDialogSaveAs).Show ort, 51
'erzeugt die Datei 'aaa.xlsm'
ort = "c:\daten\test\aaa"
Application.Dialogs(xlDialogSaveAs).Show ort, 52
In allen diesen Fällen wird die Datei im Auswahlmenü angezeigt und der richtige Dateityp ist ausgewählt.
Gruß von Luschi
aus klein-Paris
PS: Dabei ist es bei mir egal. welchen Dateityp die gerade aktuelle Datei hat, die neu abgespeichert werden soll!

Bild

Betrifft: AW: Application.Dialogs(xlDialogSaveAs) Namen vorgeben
von: Andreas
Geschrieben am: 01.12.2015 13:29:52
Hallo Luschi,
vielen Dank für Deine Hilfe.
Ich war gleichzeitig dran und habe mehrere Sachen ohne Erfolg ausprobiert.
Bis ich Deinen ersten Tip weiter obenin einer komplett leeren Datei ausprobiert habe.
Da hat alles erfolgreich funktioniert.
Und dann haben bei mir alle Lampen geleuchtet.
In der Datei waren 2 Codes mit leicht unterschiedlicher Benennung. Und ich habe natürlich am falschen rumgebastelt. In der Datei nicht sofort zu finden.
Nach Eingabe Deines Vorschlages im richtigen Code hat alles funktioniert.
Danke vielmals für Deine Mühen.
Gruß
Andreas

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Application.Dialogs(xlDialogSaveAs) Namen vorgeben"