Ich muss den Dateinamen ohne Erweiterungsnamen von VBA erhalten. Ich kenne ActiveWorkbook.Name
property, aber wenn die Windows-Eigenschaft Hide extensions for known file types
des Benutzers deaktiviert ist, lautet das Ergebnis meines Codes [Name.Extension]. Wie kann ich nur den Namen der Arbeitsmappe unabhängig von der Windows-Eigenschaft zurückgeben?
Ich probiere sogar ActiveWorkbook.Application.Caption
, aber ich kann diese Eigenschaft nicht anpassen.
Die hier gegebenen Antworten mögen schon in begrenzten Situationen funktionieren, sind aber sicherlich nicht der beste Weg, um darauf einzugehen. Erfinde das Rad nicht neu. Das Dateisystemobjekt im Microsoft Scripting Runtime-Bibliothek hat bereits eine Methode, um genau dies zu tun. Es heißt GetBaseName . Es behandelt Punkte im Dateinamen wie es ist.
%Vor%Anweisungen zum Hinzufügen eines Verweises zur Skriptbibliothek
Um es ausführlich zu beschreiben, wird die Entfernung der Erweiterung demonstriert für Arbeitsmappen .. die jetzt eine Vielzahl von Erweiterungen haben. . ein neues ungespeichertes Buch1 hat keine ext . funktioniert genauso für Dateien
[Code]
Funktion WorkbookIsOpen (FWNa $, Optional AnyExt As Boolean = False) Wie Boolean
%Vor%Ende Funktion [/ code]