Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1536to1540
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
Inhaltsverzeichnis

msoFileDialogSaveAs

msoFileDialogSaveAs
25.01.2017 13:58:46
Georg
Ich würde gerne in die Prozedur noch einen Filefilter setzen *.xlsm, krieg den aber nicht rein.
Auszug:
Sub()
......
Pfad = "Q:\Personal Leitung\Abrechnung\Gehaltsläufe\2017\BPx\"
Set Dialog = Application.FileDialog(msoFileDialogSaveAs)
With Dialog
.InitialFileName = Pfad
.Show
End With
If Dialog False Then Dialog.Execute
...End Sub

22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: msoFileDialogSaveAs
25.01.2017 14:08:42
Max2
With Dialog
.Filter.Add "Excel Mappen", "*.xlsm", 1
.
.
End With
AW: msoFileDialogSaveAs
25.01.2017 14:09:31
Max2
Sorry es muss .Filters.Add heißen.
habe das "s" vergessen
AW: msoFileDialogSaveAs
25.01.2017 14:18:10
Georg
Hallo liebe Mitstreiter
bei dem .filters.add..... bekomme ich einen Laufzeitfehler 438, Objekt wird nicht unterstützt oder so ählich.
die zweite Antwort überfordert mich sehr, meine VBA Kenntnisse sind "bescheiden", mehr nicht.
Danke für eine Antwort
AW: msoFileDialogSaveAs
25.01.2017 14:31:36
onur
Hi Georg,
Versuche es so:
Pfad = "Q:\Personal Leitung\Abrechnung\Gehaltsläufe\2017\BPx\"
Set Dialog = Application.FileDialog(msoFileDialogSaveAs)
With Dialog
.Filters.Clear
.Filters.Add "test(test.xls)", "*.xls"
.InitialFileName = Pfad
.Show
End With
If Dialog False Then Dialog.Execute
...End Sub
Anzeige
AW: msoFileDialogSaveAs
25.01.2017 14:38:49
Georg
Der Code mault sofort ab Zeile
.filters.clear
Siehe attached file:
Userbild
AW: msoFileDialogSaveAs
25.01.2017 14:49:40
onur
Pfad: ist als variant oder als string deklariert?
MUSS Variant sein
AW: msoFileDialogSaveAs
25.01.2017 15:03:30
Georg
Liebe Mitstreiter, ich vermute mal es liegt an meinen wenigen Kenntnisssen, der bestehende Code funktioniert nur eben der Filter nicht, was lediglich on top wäre.
Ich füge jetzt einfach mal den kompletten abgeänderten Code hinzu als jpg mit der Fehlermeldung, sollte j-d eine schnelle Lösung haben -gerne, ansonsten auch nicht so schlimm.
Code siehe hier:
Userbild
Anzeige
AW: msoFileDialogSaveAs
25.01.2017 15:04:23
Georg
ich habe das Kontrollkästchen vergessen zu aktivieren. G
AW: msoFileDialogSaveAs
25.01.2017 15:27:39
Werner
Hallo Georg,
Zwischen Set Dialog und .Filters fehlt With Dialog
Set Dialog = ......
With Dialog
.Filters.Clear
Gruß Werner
AW: msoFileDialogSaveAs
25.01.2017 14:09:25
Bernd
Hi,
anscheinend bekommst Du eine Begrüßung sowie Verabschiedung auch nicht rein!
Das mag die Community hier gar nicht.
MfG Bernd
AW: msoFileDialogSaveAs
25.01.2017 14:10:23
onur
Das hier könnte Dir helfen.
DAS in ein MODUL:
Function FileSelection(ByVal Endung As String) As Variant
FileSelection = Application.GetOpenFilename(FileFilter:="Excel-Dateien (" + Endung + ")," + _
Endung, MultiSelect:=True)
End Function

Hier ein Beispiel zum Aufrufen:
Sub CSVimport()
'Makroname zum Impotieren von CSV-Dateien
Dim pfad As Variant
Dim DateinameKurz As Variant
Dim WS As Worksheet
pfad = FileSelection("*.csv")' Hier wird die Funktion aufgerufen _
i>
On Error GoTo weiter
If pfad = False Then Exit Sub
weiter:
u = UBound(pfad)
For i = 1 To UBound(pfad)
Dim TestArray() As String
TestArray = Split(pfad(i), "\")
Dateiname = TestArray(UBound(TestArray))
DateinameKurz = Left(Dateiname, Len(Dateiname) - 4)
ActiveWorkbook.Worksheets.Add
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & pfad(i), Destination:=Range(" _
A1"))
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 65001
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
ActiveSheet.Name = DateinameKurz
Next i
End Sub

Anzeige
msoFileDialogSaveAs unterstützt KEINE Filter
25.01.2017 15:47:15
EtoPHG
Hallo Georg
Der FileDialog von Typ msoFileDialogSaveAs unterstützt KEINE Filter, darum musst du dein Vorhaben vergessen!
Gruess Hansueli
P.S. Erstaunlich, dass keiner der Antworter einen kurzen Check ausführt!
AW: msoFileDialogSaveAs unterstützt KEINE Filter
25.01.2017 16:02:28
onur
Hallo Georg,
Jetzt aber!
Public Sub()
Dim pfad As Variant
Pfad = "Q:\Personal Leitung\Abrechnung\Gehaltsläufe\2017\BPx\"
dialog = Application.GetSaveAsFilename(pfad, fileFilter:="Microsoft Excel-Dateien (*.xls), *.xls")
If dialog False Then
ActiveWorkbook.SaveAs dialog
End If
End Sub
Gruß
Onur
bitte kein weiterer SPAM! (owT)
25.01.2017 16:10:58
EtoPHG

Anzeige
AW: bitte kein weiterer SPAM! (owT)
25.01.2017 16:18:07
onur
Hallo,
Hääh?
Was soll diese Nachricht?
Ich habe aus VERSEHEN auf deine Antwort geantwortet, statt auf Georgs Frage
Bitte TASUSEND mal um Entschuldigung für dieses Verbrechen.
Hochachtungsvoll
Onur
AW: Darum ging's H'ueli wohl eher nicht, onur! orT
25.01.2017 20:49:13
onur
Hi Luc :-?,
Worum denn?
Kläre mich doch bitte auf.
Gruß
Onur
Um den Inhalt! (Vgle eure BTe!) owT
25.01.2017 20:50:57
Luc:-?
:-?
AW: Um den Inhalt! (Vgle eure BTe!) owT
25.01.2017 20:59:57
onur
Ich verstehe.
Es geht darum, daß er Georg schreibt, er könne sein Vorhaben vergessen, ich danach meine Lösung einstelle, er dies als Spam bezeichnet, und eine halbe Stunde später die gleiche Lösung (leicht verändert) als seine Lösung einstellt?
Anzeige
AW: msoFileDialogSaveAs
25.01.2017 16:06:55
onur
Hallo Georg,
Jetzt aber!
Public Sub()
Dim pfad As Variant
Pfad = "Q:\Personal Leitung\Abrechnung\Gehaltsläufe\2017\BPx\"
dialog = Application.GetSaveAsFilename(pfad, fileFilter:="Microsoft Excel-Dateien (*.xls), *.xls")
If dialog False Then
ActiveWorkbook.SaveAs dialog
End If
End Sub
Gruß
Onur
Die Lösung heisst GetSaveAsFileName
25.01.2017 16:31:46
EtoPHG
Hallo Georg,
Anstelle des FileDialog die GetSaveAsFilename-Methode verwenden:
Public Sub SichernMitMakros()
Dim fileSaveName As Variant
fileSaveName = Application.GetSaveAsFilename( _
InitialFileName:="Q:\Personal Leitung\Abrechnung\" & _
"Gehaltsläufe\2017\BPx\Test.xlsm", _
fileFilter:="Excel File mit Makro (*.xlsm), *.xlsm")
If VarType(fileSaveName) = vbString Then
ThisWorkbook.SaveAs _
fileName:=fileSaveName, _
FileFormat:=xlOpenXMLWorkbookMacroEnabled
Else
MsgBox "Sicherung abgebrochen!", vbOKOnly + vbExclamation
End If
End Sub
Gruess Hansueli
Anzeige
AW: Die Lösung heisst GetSaveAsFileName
27.01.2017 11:21:45
Georg
Liebe Mitstreiter, lieber Bernd,
anscheindend hat meine Frage doch einige Mißverständnisse erzeugt (außerhalb des VBA Bereiches :-)
Ich habe dankend die Lösung mit GetSaveAs.. angenommen und dazugelernt, insofern alles gut.
G

36 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige