"If Right(..." wird nicht erkannt
#1
Hi,

leider kann mein Excel (2016) auch nach mehrmaligen Versuchen mit der Befehlszeile


Code:
If Right(ThisWorkbook.Name, 5) = ".xltm" Then


nichts anfangen. Gibt es eine Alternative abzufragen, ob es sich (noch) um eine Vorlagendatei handelt?

Der ganze Code:


Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
' Aufgabenstellung
'    Vorlage ist geöffnet
'    Speichern-unter-Fenster öffnen mit definiertem Dateinamen
'       a) Speichern - anschließend Speichern-unter-Fenster schließen (zurück zur Datei)
'       b) Abbrechen - Speichern-unter-Fenster schließen (ohne weitere Aktion)
 
   Dim Dateiname As String
   If SaveAsUI = True Then                 ' Save as Button gedrückt
       If Right(ThisWorkbook.Name, 5) = ".xltm" Then       ' es handelt sich um eine Vorlage
           Dateiname = "Tagesdokumentation " & Worksheets("Übergabe").Range("B1").Value & " " & Worksheets("Übergabe").Range("A1").Value & ".xlsm"
           Application.EnableEvents = False
           Application.Dialogs(xlDialogSaveAs).Show Dateiname, 52
           Application.EnableEvents = True
           Cancel = True
       End If
  End If
End Sub
Top
#2
Hallo,

teste mal dieses Makro:


Code:
Sub test()
 MsgBox ThisWorkbook.Name
End Sub

was wird dir da angezeigt?
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top
#3
Hi
Du hast da "xltm" stehen
Sollte es evtl ".xlsm" heissen ?

Gruss Igel
Ich kann nicht alles wissen,
aber vieles lernen ! 19
Top
#4
Hallo,

@Igel

(05.02.2018, 13:27)Igelbauer schrieb: Hi
Du hast da "xltm" stehen
Sollte es evtl ".xlsm" heissen ?

nicht unbedingt siehe Bild


Angehängte Dateien Thumbnail(s)
   
Gruß Stefan
Win 10 / Office 2016
Top
#5
Hallo Stefan, 

hast du das Makro von mir mal getestet?
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top
#6
Hallo Klaus-Dieter,

ja, habe ich. Mit Excel 2010 kommt bei mir die Dateiendung mit. Wie es in Excel 2016 ausschaut, weiß ich nicht.

EDIT: Klaus-Dieter, du hast Recht. Ich habe dies nicht an einer Vorlage getestet und bei einer Vorlage kommt natürlich keine Dateiendung.
Gruß Stefan
Win 10 / Office 2016
Top
#7
Hi, danke,

habe das Problem jetzt mit


Code:
If Me.Path = "" Then


gelöst. Prüft, ob der Pfad noch leer ist weil die Datei aus einer Vorlage stammt und noch nicht gespeichert wurde.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste