Hallo zusammen,
ich habe quasi keine Ahnung von VBA. Ich zeichne lediglich Makros per Hand auf. Nun stehe ich vor einem Problem, was ich so nicht lösen kann.
ich würde gern eine Datei speichen. Der Dateiname sollte der Inhalt einer bestimmten Zelle sein.
Es soll ein definierter Ordner ausgewählt warden. Dort will ich aber immer per Hand noch den Unterorner wählen können. Und das Dateiformat soll von standardmäßig ".xlsx" auf ".xlsm" geändert werden.
bisher hab ich mir einen code zusammengebaut, bei dem die Zelle für den Namen in die Zwischenablage kopiert wird und dann das "speichern unter" Fenster geöffnet wird und der Pfad ausgewählt wird.
Dort muss ich den Namen dann per Hand einfügen und das Dateiformat auch per hand ändern.
Sub Speichern()
Const C_CLASS_MSFORMS_DATAOBJECT As String = "new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}"
' Dim o As MSForms.DataObject ' EarlyBinding
Dim o As Object ' LateBinding (nur nötig wenn keine Userform vorhanden ist)
Dim s As String
' Set o = New MSForms.DataObject ' EarlyBinding
Set o = CreateObject(C_CLASS_MSFORMS_DATAOBJECT) ' LateBinding
s = Range("B15").Text
Call o.SetText(s, 1)
Call o.PutInClipboard
Set o = Nothing
ChDir "C:\Users\epa01\Desktop\Aktuelle_Messung"
Application.Dialogs(xlDialogSaveAs).Show
End Sub
Kann man hier die Daten aus der Zwischenablage direct beim Dateinamen eintragen und das Format in ".xlsm" ändern lassen?
Auf "Speichern" in diesem "speichern unter"-Dialogfenster will ich weiterhin selbst drücken.
Vielen Dank schonmal.
|