Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
332to336
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
332to336
332to336
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

GetSaveAsFilename

GetSaveAsFilename
04.11.2003 09:25:14
Martin Halberstadt
Guten Morgen liebe Forumsbesucher,

kann man dem "Application.GetSaveAsFilename" zuweisen, dass, wenn das "Datei-Speichern-unter"-Fenster geöffnet wird, Excel die Datei automatisch als "Microsoft Excel-Arbeitsmappe" gespeichert wird?

Ein Versuch von mir so so aus, leider ohne Erfolg:

With Application
.DefaultSaveFormat = xlWorkbookNormal
.GetSaveAsFilename
End with

Ich bin für jede Anregung dankbar.

MfG,
Martin

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
In solchen Fällen hilft Aufzeichnen - bei mir...
04.11.2003 09:43:45
Michael Scheffler
kommt das raus:

ActiveWorkbook.SaveAs Filename:="D:\test.xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=Fals
AW: In solchen Fällen hilft Aufzeichnen - bei mir...
04.11.2003 09:49:41
Martin Halberstadt
Hallo Michael,

wahrscheinlich hätte meine Ziele näher erläutern sollen.

Deinen Vorschlag habe ich bereits ausprobiert um daraus eventuell nützliches in mein Makro zu übernehmen.

Das Problem ist, dass ich so das Blatt schon direkt speichere.
Ich will jedoch, dass die User am Ende meines Makros eine Abfrage bekommen:

"Wollen Sie die aktuelle Arbeitsmappe speichern?"

Wenn Sie "NEIN" drücken, dann ist Makro vorbei, wenn Sie "JA" drücken, dann soll das Speichern unter-Fenster aufpoppen und man kann selbständig speichern.

Es klappt bisher alles, nur steht nun in diesem Fenster als DateiTyp "Alle Dateien", ohne sonstige Auswahlmöglichkeiten. Und deshalb will ich Excel vorgeben, dass dort dann schon der Excel-Standard "Microsoft Excel-Arbeitsmappe" steht.

Hast Du da eine Idee???

Gruß,
Martin
Anzeige
AW: In solchen Fällen hilft Aufzeichnen - bei mir...
04.11.2003 10:42:50
GerdW
Mal aus der Hilfe:

GetSaveAsFilename-Methode
Siehe auch Betrifft Beispiele Zusatzinfo
Zeigt das Standarddialogfeld Speichern unter an und bekommt einen Dateinamen vom Benutzer, ohne jedoch irgendwelche Dateien zu speichern.

Ausdruck.GetSaveAsFilename(InitialFilename, FileFilter, FilterIndex, Title, ButtonText)

Ausdruck Erforderlich. Ein Ausdruck, der ein Application-Objekt zurückgibt.

InitialFilename Optionaler Variant-Wert. Gibt den vorgeschlagenen Dateinamen an. Wenn Sie dieses Argument nicht angeben, verwendet Microsoft Excel den Namen der aktiven Arbeitsmappe.

FileFilter Optionaler Variant-Wert. Eine Zeichenfolge, die Dateifilterkriterien angibt.

Diese Zeichenfolge besteht aus Zeichenfolgepaaren für den Dateifilter, gefolgt von einer MS-DOS-Platzhalterspezifikation für den Dateifilter, wobei jeder Teil und jedes Paar durch Kommas getrennt sind. Jedes einzelne Paar wird im Dropdownlistenfeld Dateityp angezeigt. Die folgende Zeichenfolge gibt beispielsweise die beiden Dateifilter Text und Add-In an: "Textdateien (*.txt), *.txt, Add-In-Dateien (*.xla), *.xla".

Um mehrere MS-DOS-Platzhalterausdrücke für einen einzelnen Dateifiltertyp anzugeben, trennen Sie die Platzhalterausdrücke mit Semikolons. Beispiel: "Visual Basic-Dateien (*.bas; *.txt),*.bas;*.txt".

Wenn Sie dieses Argument nicht angeben, wird der Standardwert "Alle Dateien (*.*),*.*" verwendet.

FilterIndex Optionaler Variant-Wert. Gibt die Indexnummer der Standarddatei-Filterkriterien an, von 1 bis zu der Anzahl von in FileFilter angegebenen Filtern. Wenn Sie dieses Argument nicht angeben oder es größer als die Anzahl von vorhandenen Filtern ist, so wird der erste Dateifilter verwendet.

Title Optionaler Variant-Wert. Gibt den Titel des Dialogfeldes an. Wenn Sie dieses Argument nicht angeben, wird der Standardtitel verwendet.

ButtonText Optionaler Variant-Wert. Nur bei Macintosh.

Anmerkungen
Diese Methode gibt den ausgewählten Dateinamen oder den vom Benutzer eingegebenen Namen zurück. Der zurückgegebene Name kann eine Pfadangabe enthalten. Gibt False zurück, wenn der Benutzer das Dialogfeld mit Abbrechen verlässt.

Diese Methode kann u.U. das aktuelle Laufwerk oder den aktuellen Ordner ändern.

Beispiel
In diesem Beispiel wird das Dialogfeld Speichern unter mit einem Dateifilter für Textdateien angezeigt. Wenn der Benutzer einen Dateinamen wählt, wird dieser in einem Meldungsdialogfeld angezeigt.

fileSaveName = Application.GetSaveAsFilename( _
fileFilter:="Text Files (*.txt), *.txt")
If fileSaveName <> False Then
MsgBox "Save as " & fileSaveName
End If

Gerd
Anzeige
AW: In solchen Fällen hilft Aufzeichnen - bei mir...
04.11.2003 10:56:06
Martin Halberstadt
Hallo Gerd,

die Datei wird nun immer unter "FALSE" gespeichert. Leider IMMER. Sogar, wenn ich im Dialog-Fenster "Datei speichern unter..." auf "Abbrechen" gehe.

Sie wird in jedem Fall abgespeichert. Wie kann das sein bzw. wie ist es zu unterbinden?

Gruß,
Martin
AW: In solchen Fällen hilft Aufzeichnen - bei mir...
04.11.2003 11:05:12
GerdW
Ohne Code ist es nicht leicht herauszufinden, wo der Fehler ist.

Gerd
AW: In solchen Fällen hilft Aufzeichnen - bei mir...
04.11.2003 11:08:53
Martin Halberstadt
Hallo Gerd,

hier ist mein Code:


Sub TestDruckundSpeichern()
'ActiveSheet.PrintOut
If MsgBox(prompt:="Möchten Sie das Arbeitsblatt nun speichern?", Buttons:=vbYesNo + vbQuestion) = vbYes Then
ActiveWorkbook.SaveAs fileSaveName = Application.GetSaveAsFilename( _
fileFilter:="Microsoft Excel-Arbeitsmappe (*.xls), *.xls")
If fileSaveName <> False Then
MsgBox "Save as " & fileSaveName
End If
End If
End Sub


Ziel des Ganzen:
nach dem Ausdruck des Tabellenblattes soll nach "Ja"-Klick in der Box das Dialog-Fenster "Datei speichern unter..." erscheinen, mit dem Excel-Standard als Datei-Typ.
Mehr sollte mein Makro eigentlich nicht können müssen.

Gruß,
Martin
Anzeige
AW: In solchen Fällen hilft Aufzeichnen - bei mir...
04.11.2003 11:33:35
GerdW
Option Explicit

Sub Save_as()
Dim filesavename As Variant
If MsgBox(prompt:="Möchten Sie das Arbeitsblatt nun speichern?", Buttons:=vbYesNo + vbQuestion) _
= vbNo Then Exit Sub
filesavename = Application.GetSaveAsFilename( _
fileFilter:="Microsoft Excel-Arbeitsmappe (*.xls), *.xls")
If filesavename <> False Then
ActiveWorkbook.SaveAs filesavename
End If
End Sub


Gerd
Super!!!
04.11.2003 11:38:06
Martin Halberstadt
Hallo Gerd,

so funktioniert es einwandfrei.
Hab vielen Dank für Deine Hilfe.

Einen schönen Tag wünsch ich Dir noch.

MfG,
Martin

19 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige