Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Teil eines Excel-Dateinamen in eine Zelle übernehmen

Frage Microsoft Microsoft Office

Mitglied: rentier

rentier (Level 1) - Jetzt verbinden

11.05.2008, aktualisiert 12.05.2008, 21623 Aufrufe, 5 Kommentare

Betrifft Excel 2003

Hallo,

ich stehe vor folgendem Problem:

Ich habe eine Excel-Datei mit folgendem Dateinamen (nur eine von mehreren) "010508_Bauteilname.xls" der erste Teil der Datei ist fortlaufend für alle Tage eines Monats im Format "ttmmjj".
Ich würde nun gerne beim Öffnen der Datei in die Zeille A7 gerne automatisch den Datumsteil vor dem "_" als Datum in die genannte Zelle eintragen lassen.

Kann mir hier jemand behilflich sein?

Gruß,
rentier
Mitglied: misterdemeanor
11.05.2008 um 16:43 Uhr
Grüß Dich rentier,

wahrscheinlich würde ich das ganze in eine Funktion auslagern:

01.
Public Function GetDateFromFileName(ByVal strFileName As String) As Date 
02.
  Dim d As Date 
03.
  Dim strDate As String 
04.
    If InStr(1, strFileName, "\") Then 
05.
      strFileName = Mid(strFileName, InStrRev(strFileName, "\") + 1) 
06.
    End If 
07.
    strDate = Left(strFileName, InStr(1, strFileName, "_") - 1) 
08.
    d = DateSerial(Right(strDate, 2), Mid(strDate, 3, 2), Left(strDate, 2)) 
09.
    GetDateFromFileName = d 
10.
End Function 
11.
 
Im Workbook_Open() Event dann aufrufen:

01.
Me.Worksheets("Tabelle1").Range("A7").Value = GetDateFromFileName(Me.FullName)
BG, Felix -misterdemeanor-
Bitte warten ..
Mitglied: Biber
11.05.2008 um 18:40 Uhr
Moin rentner,

falls Du es mit dem mitgelieferten Excelfunktionen machen willst, dann trage in die Zeile A7 diese Formel ein:
01.
 =TEIL(ZELLE("Dateiname");FINDEN("[";ZELLE("Dateiname"))+1;6)
Sieht mit eingedeutschen Funktionsnamen zwar ausgesprochen deppert aus, tut es aber zu Not.
Kurzerläuterung:
  • Zelle() ist eine angebliche Kompatibilitätsfunktion, die seit Excel-Version 3.0b besser niemand anfassen soll. Die wird es auch noch 2019 geben.
  • der Parameter "Dateiname" (wirklich genau dieser Text in Anführungszeichen liefert Pfad und Dateinamen in der Form "d:\temp\[100508_blablubb.xls]Tabelle1
  • Mit FINDEN suche ich das erste "["-Zeichen und hole die nächsten 6 Zeichen mit der TEIL( text, start, len)-Funktion.

Damit hast Du bis jetzt natürlich nur die ersten 6 Zeichen "100508" dort stehen.
Wenn Du daraus ein Datum machen willst, solltest Du
  • in einem nicht störenden Feld (Z.B. AJ3) die Formel oben hinterlegen
  • und diese 6 Zeichen noch mal mit der Teil()-Funktion aufhübschen
  • oder aus den ersten 3x2-Datumsteile TTMMJJ mit der Funktion DATUM(zahl Jahr; zahl Monat; zahl tach) ein Datum erzeugen.

Grüße
Biber
Bitte warten ..
Mitglied: bastla
11.05.2008 um 19:01 Uhr
@Biber
Sieht mit eingedeutschen Funktionsnamen zwar ausgesprochen deppert aus ...
Wie würdest Du denn dann die dynamische (bringt zwar hier ohnehin nicht wirklich etwas) Variante "Teil des Dateinamens bis unmittelbar vor dem (hoffentlich enthaltenen) ersten _" kommentieren?
01.
=TEIL(ZELLE("Dateiname");SUCHEN("[";ZELLE("Dateiname"))+1;SUCHEN("_";ZELLE("Dateiname");SUCHEN("[";ZELLE("Dateiname")))-1-SUCHEN("[";ZELLE("Dateiname")))
Grüße
bastla
Bitte warten ..
Mitglied: Biber
12.05.2008 um 01:28 Uhr
@bastla
Du wirst lachen - meine erste angetestete Version, die gleich ein Datum aus dem Dateinamen machen sollte, fühlte sich in etwa so an:
01.
=DATUM(2000+WERT(TEIL(TEIL(ZELLE("Dateiname");SUCHEN("[";ZELLE("Dateiname"))+1;SUCHEN("_";ZELLE("Dateiname");SUCHEN("[";ZELLE("Dateiname")))-1-SUCHEN("[";ZELLE("Dateiname")));5;2));WERT(TEIL(TEIL(ZELLE("Dateiname");SUCHEN("[";ZELLE("Dateiname"))+1;SUCHEN("_";ZELLE("Dateiname");SUCHEN("[";ZELLE("Dateiname")))-1-SUCHEN("[";ZELLE("Dateiname")));3;2));WERT(TEIL(TEIL(ZELLE("Dateiname");SUCHEN("[";ZELLE("Dateiname"))+1;SUCHEN("_";ZELLE("Dateiname");SUCHEN("[";ZELLE("Dateiname")))-1-SUCHEN("[";ZELLE("Dateiname")));1;2)))
Ich denke, das ist selbst für ausgesprochene Liebhaber von Onelinern ein bisschen neben der Spur.
Funktonieren würde es ("sinnvoller" Dateiname unterstellt), aber das sieht doch wie mit dem Kopf auf die Tastatur aufgeschlagen, oder?

Grüße
Biber
Bitte warten ..
Mitglied: rentier
12.05.2008 um 10:28 Uhr
Hallo nochmal,

vielen Dank für Eure superschnelle Hilfe, bin jetzt erst dazu gekommen Eure Antworten zu lesen. Werd sie im laufe des Tages ausprobieren.

Gruß,
rentier
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
gelöst Excel Dateien durchsuchen und Teile extrahieren (14)

Frage von Beranavan zum Thema Microsoft Office ...

Microsoft Office
gelöst Excel Zelle dynamisch einer Zeile zuordnen (3)

Frage von sammy65 zum Thema Microsoft Office ...

VB for Applications
gelöst Zelle in Excel per Klick einfärben (5)

Frage von C.Mue83 zum Thema VB for Applications ...

Microsoft Office
VBA Code zum Kopieren von einzelnen Zellen in Excel (3)

Frage von SebastianL zum Thema Microsoft Office ...

Neue Wissensbeiträge
Viren und Trojaner

Neues Botnetz über IoT-Geräte

Information von certifiedit.net zum Thema Viren und Trojaner ...

Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Externe IP von innen erreichbar machen (15)

Frage von Windows10Gegner zum Thema Router & Routing ...

Windows Installation
Windows 10 neu installieren (12)

Frage von imebro zum Thema Windows Installation ...

Windows Server
Frage zu Server Rack (11)

Frage von rainergugus zum Thema Windows Server ...