Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Makro soll mit Maske "Speichern unter" enden | Herbers Excel-Forum


Betrifft: Makro soll mit Maske "Speichern unter" enden von: Manasse
Geschrieben am: 16.01.2012 11:41:32

Hallo zusammen,

ich möcht ein Makro schreiben, dass nur die Maske "Speichern unter" aufruft. Und zwar so, dass die Maske "Speichern unter" geöffnet wird und das Makro dort endet. Dann könnte der neue Name für die Datei eingegeben werden und der Button "Speichern" manuell gedrückt werden.

Gibt es eine Möglichkeit dies als Makro ausführen zu lassen und könnte mir -wenn ja- jemand einen Tipp geben? Ich wäre äußerst dankbar für jede Hilfe!!

Gruß
Manasse

  

Betrifft: AW: Makro soll mit Maske "Speichern unter" enden von: Rudi Maintaire
Geschrieben am: 16.01.2012 11:51:49

Hallo,
klar geht das.

Sub ttttt()
  'Code
  Application.FileDialog(msoFileDialogSaveAs).Show
End Sub

Gruß
Rudi


  

Betrifft: AW: Makro soll mit Maske "Speichern unter" enden von: Manasse
Geschrieben am: 16.01.2012 13:26:54

Hallo Rudi,

erst mal ganz herzlichen Dank für Deine Antwort. Klappt eigentlich recht gut :-)
Nur öffnet sich das Fenster "Speichern" und nicht "Speichern Unter", obwohl es im Dialog "...SaveAs" heißt. Hast Du da noch eine Idee?

Gruß
Manasse


  

Betrifft: AW: Makro soll mit Maske "Speichern unter" enden von: Rudi Maintaire
Geschrieben am: 16.01.2012 13:53:45

Hallo,
ist doch letztlich das gleiche.

Sub xxxx()
  'Code
  With Application.FileDialog(msoFileDialogSaveAs)
    .Title = "Speichern unter"
    .InitialFileName = "c:\test\" 'anpassen
    .Show
  End With
End Sub

Gruß
Rudi


  

Betrifft: AW: Makro soll mit Maske "Speichern unter" enden von: Manasse
Geschrieben am: 16.01.2012 15:53:42

Hallo Rudi,

vielen Dank auch für diese Antwort!!
Ich habe Deinen Vorschlag in das Makro mit aufgenommen.

- Nun erscheint auch der Dialog "Speichern unter" mit dem vorgewählten Pfad. Nur wird die Datei nicht gespeichert. Egal welchen Pfad ich angebe, die Datei ist dort nicht zu finden.
- Des Weiteren habe ich das Phänomen, dass nach dem Bestätigen des "Speichern unter" Dialogs noch einmal beim schließen der Datei die Abfrage kommt, ob ich die Datei nach der Änderung speichern möchte.

Es hat so den Anschein, als ob der "Speichern unter" Vorgang überhaupt nicht zur Kenntnis genommen wird. Hast Du da noch eine Idee?

Gruß
Manasse


  

Betrifft: AW: Makro soll mit Maske "Speichern unter" enden von: fcs
Geschrieben am: 16.01.2012 16:56:15

Hallo Manasse,

der FileDialog gibt als Ergebnis "nur" den ausgewählten Dateinamen bzw. False zurück. Er muss um die Excecute-Anweisung erweitert werden, damit gespeichert wird.

Alternativ kannst du auch den "Original" Excel-SavaAs-Dialog anzeigen.

Gruß
Franz

Sub aaaaa()
  'Code
  'Zeigt den Excel-Speichern unter-Dialog an
  With Application.Dialogs(xlDialogSaveAs)
    If .Show("Test " & Format(Now, "YYYYMMDD_hhmmss")) = False Then Exit Sub
  End With
End Sub


Sub bbbbb()
  'Code
  'Zeigt einen Dateiauswahl-Diaog zum Speichern an
  With Application.FileDialog(msoFileDialogSaveAs)
    .Title = "Speichern unter"
    .InitialFileName = "C:\Lokale Daten\Test\Test " & Format(Now, "YYYYMMDD_hhmmss") 'anpassen
    If .Show = False Then
      MsgBox "Datei wurde nicht gespeichert!"
    Else
      .Execute
    End If
  End With
End Sub



  

Betrifft: AW: Makro soll mit Maske "Speichern unter" enden von: Manasse
Geschrieben am: 16.01.2012 17:19:41

Hallo fcs,

ganz herzlichen Dank für Deinen tollen Input. Es klappt jetzt alles prima. Diese Lösung habe ich schon lange gesucht!

Gruß
Manasse