Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
720to724
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
720to724
720to724
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
erst fünf Zeichen aus Dateinamen auslesen
24.01.2006 08:56:28
Sebastian
Hallo Forum,
ich versuche folgendes Problem zu lösen.
Ich speichere Dateien unter einer 5-stelligen Nummer und dem zugehörigen Namen ab:
z.B: C:\Eigene Dateien\Geschenke\50000_Meier_Ja.xls
C:\Eigene Dateien\Geschenke\50001_Schmitt_Nein.xls
C:\Eigene Dateien\Geschenke\50002_Lehmann_Ja.xls
Das öffnen der Dateien mit VBA gestaltet sich schwierig, da mir immer nur die 5-stellige Nummer bekannt ist.
Ich möchte die Dateien nur anhand dieser 5-stelligen Nummer öffnen lassen. Wie ist das machbar?
Hoffe mir kann jemand helfen,
Grüßle Sebastian

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: erst fünf Zeichen aus Dateinamen auslesen
24.01.2006 09:14:56
Heiko
Hallo Sebastian,
wenn die Dateien im im gleichen Pfad liegen und die Nummer IMMER am Anfang des Dateinamens ist, dann z.B. so:

Sub DateiAnhandNummerÖffnen()
Dim lngNummer As Long, lngI As Long, lngHelp As Long
lngNummer = Application.InputBox("Bitte geben Sie die DateiNummer an !", " DateiNummer", "50000", Type:=1)
With Application.FileSearch
.NewSearch
' Pfad bei Bedarf Anpassen !!!
.LookIn = "C:\Eigene Dateien\Geschenke"
.SearchSubFolders = False
.FileType = msoFileTypeAllFiles
.Execute
If .FoundFiles.Count > 0 Then
For lngI = 1 To .FoundFiles.Count
lngHelp = CLng(Val(Right(.FoundFiles(lngI), Len(.FoundFiles(lngI)) - InStrRev(.FoundFiles(lngI), "\"))))
If lngHelp = lngNummer Then
Workbooks.Open .FoundFiles(lngI)
Exit Sub
End If
Next lngI
End If
End With
MsgBox "Eine Datei mit der Nummer '" & lngNummer & "' konnte nicht gefunden werden !", vbCritical
End Sub

Gruß Heiko
PS: Rückmeldung wäre nett !
Anzeige
AW: erst fünf Zeichen aus Dateinamen auslesen
24.01.2006 09:18:26
Josef
Hallo Sebastian!
Probier mal!
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub OeffnenNachNummer()
Dim objFS As FileSearch
Dim objWb As Workbook
Dim strPath As String, strNum As String, strFile As String

strPath = "C:\Eigene Dateien\Geschenke\"

strNum = InputBox("Geben Sie die Nummer der zu öffnenden Datei ein!", "Datei Öffnen")

If strNum = "" Then Exit Sub

strFile = strPath & "*" & strNum & "*.xls"

Set objFS = Application.FileSearch

With objFS
  .NewSearch
  .LookIn = strPath
  .FileType = msoFileTypeExcelWorkbooks
  .Filename = strFile
  .SearchSubFolders = False
  
  If .Execute > 0 Then
    
    Set objWb = Workbooks.Open(.FoundFiles(1))
    
  End If
  
End With

Set objFS = Nothing

End Sub


'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: erst fünf Zeichen aus Dateinamen auslesen
24.01.2006 09:18:48
MichaV
Hallo,
z.B. auch so

Option Explicit
Sub Sebastian()
Dim a As Workbook
Const Pfad = "C:\Eigene Dateien\Geschenke\"
Set a = Workbooks.Open(Pfad & Dir(Pfad & "50001*.xls"))
End Sub

Gruß- Micha
PS: Rückmeldung wäre nett.
Alle 3 Subs funktionieren...dankeschööönnnn!!!
24.01.2006 09:52:35
Sebastian
Hallo zusammen,
vielen Dank, ich habe alle 3 Vorschläge ausprobiert und alle funktionieren einwandfrei!!!
Ich habe mich für die Sub von MichaV entschieden. Die ist sehr kurz und für meine bescheidenen Zwecke völlig ausreichend.
Gruß Sebastian

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige