Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
700to704
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
700to704
700to704
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Arbeitsmappenname ändern

Arbeitsmappenname ändern
24.11.2005 11:46:37
Matthias
Ich starte eine xlt-Mustervorlage und Excel generiert automatisch einen Namen (durchnummeriert) für die neue Arbeitsmappe. Ich möchte bei "Speichern unter" aber einen anderen Namen vorschlagen, den der User ändern können muss.
Da die SaveAs-Methode nicht den Standarddialog aufruft, sondern sofort speichert, kann ich sie nicht verwenden. Ich wollte daher den Namen der noch nicht gespeicherten Arbeitsmappe ändern. Die Name-Eigenschaft ist aber schreibgeschützt und eine Methode zum Ändern des Namens habe ich auch nicht gefunden.
Ich bitte um Tipps, falls das doch irgendwie geht.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Arbeitsmappenname ändern
24.11.2005 11:55:48
Uduuh
Hallo,
du kannst den Diakog aufrufen:
Application.Dialogs(xlDialogSaveAs).Show ("Dateiname")
Gruß aus’m Pott
Udo

AW: Arbeitsmappenname ändern
24.11.2005 15:14:25
Matthias
Da ich auf den Aufruf von Speichern (unter) reagieren möchte, habe ich mich in das BeforeSave-Event gehängt. Um rekursive Aufrufe zu verhindern, schalte ich die Events vor dem Aufruf des SaveAs-Dialogs aus. Mit Cancel wird das auslösende Speichern abgebrochen, weil das ja bereits erledigt ist. Außerdem blende ich vor dem Speichern das Eingabeblatt aus und ein Initialisierungsblatt ein, auf dem nur eine Nachricht steht, dass die Mappe mit Makroausführung gestartet werden muss (Im Workbook.Open wird dann das Eingabeblatt eingeblendet)
So sieht das jetzt im Zusammenhang aus:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Application.EnableEvents = False 'ausschalten, um rekursiven Aufruf zu verhindern
Application.ScreenUpdating = False 'Mappenänderung für Speichern nicht anzeigen
Worksheets("Initialisierung").Visible = True  'Eingabeblatt zum Speichern ausblenden
Worksheets("Eingabe").Visible = xlVeryHidden
If SaveAsUI Then
Application.Dialogs(xlDialogSaveAs).Show NeuerVorschlag 'anderen Speichernamen vorgeben
Else
ActiveWorkbook.Save
End If
Worksheets("Eingabe").Visible = True  'Eingabeblatt wieder einblenden
Worksheets("Initialisierung").Visible = xlVeryHidden
Application.ScreenUpdating = True     'Änderungen wieder anzeigen
Application.EnableEvents = True
Cancel = True                         'abbrechen, da bereits gespeichert wurde
End Sub

Vielen Dank für die Hilfe
Matthias
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige