Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1560to1564
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

EXCEL: VBA Makro zum vereinfachten Speichern

EXCEL: VBA Makro zum vereinfachten Speichern
01.06.2017 13:09:29
Pascal
Hallo liebes Forum,
ich hab folgenden VBA-Code in Benutzung.
---------------------------------------------------------------------------------

Sub Speichern_unter()
Dim Datei As String
Dim Verzeichnis As String
Dim SaveDummy As Variant
Verzeichnis = "K:\Ordner1\Ordner2\Berichte\" 'Verzeichnis-Vorschlag
Datei = Range("H5") & ".xls" 'Datei-Vorschlag
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy 'Es wurde im Dialog auf Speichern  _
gedrückt
End Sub

Function SpeichernUnter(VorgabeName As String) As Variant
SpeichernUnter = Application.GetSaveAsFilename(InitialFileName:=VorgabeName, Filefilter:="Excel  _
Dateien (*.xls),*.xls*", FilterIndex:=1, Title:="Speichern unter...", ButtonText:="speichern")
End Function

--------------------------------------------------------------------------------
Dieser Code ermöglicht es mir über eine Schaltfläche die Excel-File in einem vordefinierten Pfad abzuspeichern. Zusätzlich wird der Name als Datei-Name übernommen welcher in der Zelle "H5" steht. Doch der generierte Name der Excel-Datei passt noch nicht ganz.
Wie schaffe ich es das zwischen dem Wort was aus "H5" übernommen wird, welches auch dann der Datei-Name ist, noch Sonderzeichen geschrieben werden. Ist das Wort also "BeispielTextNr1" (H5) dann soll daraus "Beispiel_Text_Nr_1" gemacht werden un dieser Name dann als Datei-Name dienen.
Die Logik wäre immer gleich "XXXXX_XXXX_X" . Also 5 Zeichen + "_" + 4 Zeichen + "_" + 1 Zeichen.
Besten Dank!
Pascal

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Textfunktionen
01.06.2017 13:15:55
Rudi
Hallo,
=left(Range("H5"),5) &"_" &mid(Range("H5"),6,4) &"_" &right(Range("H5"),1)
Gruß
Rudi
AW: Textfunktionen
01.06.2017 13:44:40
Pascal
Hallo Rudi,
hat super geklappt, vielen dank!
Der Code sieht jetzt folgender Maßen aus
Sub Speichern_unter()
Dim Datei As String
Dim Verzeichnis As String
Dim SaveDummy As Variant
Verzeichnis = "K:\Ordner1\Ordner2\Berichte\" 'Verzeichnis-Vorschlag
Datei = =left(Range("H5"),5) &"_" &mid(Range("H5"),6,4) &"_" &right(Range("H5"),1) &  _
ActiveSheet.Range("AJ6").Value & ".xls" 'Datei-Vorschlag
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
If SaveDummy  False Then ActiveWorkbook.SaveAs SaveDummy 'Es wurde im Dialog auf Speichern  _
gedrückt
End Sub
Das fett Gedruckte wird mir zusätzlich noch ein Wort in den Datei-Namen einfügen insofern es auch in der entsprechenden Zelle steht. Steht in der Zelle nichts so wird auch nichts übernommen.
Frage hierzu: Wie schaffe ich es das wenn ein Wort in der entsprechenden Zelle steht es mir vor das Wort ein "_" setzt. Also
AJ6 = "Wort" ---> "_Wort" mit in den Datei-Namen
AJ6 = LEER ---> Leer lassen
so wie es ja auch schon mit ActiveSheet.Range("AJ6").Value klappt, nur weiß ich eben nicht wie ich das Sonderzeichen dann noch reinbekomme.
Besten Dank
Pascal
Anzeige
AW: Textfunktionen
07.06.2017 21:15:27
Rudi
Hallo,
Datei = =left(Range("H5"),5) &"_" &mid(Range("H5"),6,4) &"_" &right(Range("H5"),1) & _
iif(ActiveSheet.Range("AJ6").Value"","_"&ActiveSheet.Range("AJ6").Value,"") & ".xls" 'Datei-Vorschlag
SaveDummy = SpeichernUnter(Verzeichnis & Datei)
Gruß
Rudi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige