Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
880to884
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
880to884
880to884
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Arbeitsmappen öffnen VBA

Arbeitsmappen öffnen VBA
04.07.2007 10:48:40
jjo
Hallo Zusammen,
wie kann ich den u.g. Code am elegantesten lösen, da er ja nur EINE Sprungmarke aktzeptiert.
Will eigentlich nur ne Datei öffnen, und wenn er die mit Datum Gestern nicht findet, soll er halt bis zu 5 Tage in die Vergangenheit gehen, um die Datei zu finden.
Am liebsten wär mir ja ne Schleife, dass er solang sucht, bis er die "jüngste" Datei findet, also die neueste, aber das blick ich wieder nicht, wie ich die in dem Pfad da einbauen soll^^
Vielen Dank im Voraus!!!
Jörg

Sub Gross_aktualisieren()
ChDir "x\x"
On Error GoTo weiter1
Workbooks.Open Filename:="N:\x\x Stand " & Date - 1 & ".xls", UpdateLinks:=0
Exit Sub
On Error GoTo weiter2
weiter1:    Workbooks.Open Filename:="x\x Stand " & Date - 2 & ".xls", UpdateLinks:=0
Exit Sub
On Error GoTo weiter3
weiter2:    Workbooks.Open Filename:="N:\x\x Stand " & Date - 3 & ".xls", UpdateLinks:=0
Exit Sub
On Error GoTo weiter4
weiter3:    Workbooks.Open Filename:="N:\x\x Stand " & Date - 4 & ".xls", UpdateLinks:=0
Exit Sub
On Error GoTo fehler
weiter4:    Workbooks.Open Filename:="N:\x\x Stand " & Date - 5 & ".xls", UpdateLinks:=0
Exit Sub
fehler:     MsgBox "Irgendwas stimmt nicht"
Exit Sub
End Sub


6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Arbeitsmappen öffnen VBA
04.07.2007 10:55:00
Hajo_Zi
Hallo Jörg,

Option Explicit
Sub Gross_aktualisieren()
Dim ByI As Byte
ChDir "x\x"
For ByI = 1 To 5
'       von Berti Koern
Dim Fso, Dateiname
Set Fso = CreateObject("Scripting.FileSystemObject")
Dateiname = "N:\x\x Stand " & Date - ByI & ".xls"
'       Ergänzung öffnung Hajo
If Fso.FileExists(Dateiname) Then
Workbooks.Open Dateiname, UpdateLinks:=0
Exit Sub
End If
Next ByI
MsgBox "Irgendwas stimmt nicht"
End Sub



Frage an Hajo
04.07.2007 11:34:00
Bernd
Hi Hajo,
ich habe versucht, den Code an mein Bedürfniss anzupassen. Ich brauche auch ein Makro, das nur die neueste Datei öffent. Leider kommt bei mir immer die Msg.-Box-Meldung. Die Daten liegen vesuchsweise auf Lw D im Verzeichnis a_temp. Willst du mir helfen?

Sub D_Hajo_aktualisieren()
Dim ByI As Byte
ChDir "D:\a_temp"
For ByI = 1 To 5
'       von Berti Koern
Dim Fso, Dateiname
Set Fso = CreateObject("Scripting.FileSystemObject")
Dateiname = "D:\a_temp" & Date - ByI & ".xls"
'       Ergänzung Öffnung Hajo
If Fso.FileExists(Dateiname) Then
Workbooks.Open Dateiname, UpdateLinks:=0
Exit Sub
End If
Next ByI
MsgBox "Irgendwas stimmt nicht"
End Sub


Danke Bernd

Anzeige
AW:Datei öffnen
04.07.2007 11:37:00
Hajo_Zi
hallo Bend,
ist Dein Dateiname genauso aufgebaut?
Es werden nur von Heute 5 Tage zurück gerechnet.
wegen der Sortierug sollte man eigentlich ein anderes Datumsformat wählen "JJJJMMTT"
Gruß Hajo

an Hajo
04.07.2007 11:49:00
Bernd
Hi Hajo,
das sind die Dateinamen:
https://www.herber.de/bbs/user/43817.jpg
Ich lese das Verzeichnis aus und möchte nur die neueste Datei haben, im Bild wäre das der Monat 09.2006. Der Nachteil beim Speicherdatum ist der, dass ein älterer Bericht, z.B. der vom Juli, ja geöffnet worden sein kann und dann neu abgespeichert. Dann ist der Juli-bericht der "jüngste" gemäß Speicherdatum.
Ideal wäre, den Code für ein Auslesen einmal nach neustem Dateinamen (der Ascii-Code ist doch füür 09.2006 größer als für 08.2006, oder ?) und einmal nach Speicherdatum...
Herzliche Grüße
Bernd

Anzeige
AW: Arbeitsmappen öffnen VBA
04.07.2007 10:59:00
Rudi
Hallo,

Sub Gross_aktualisieren()
Dim n As Integer
Do
n = n + 1
Loop While Dir("N:\x\x Stand " & Date - n & ".xls") = "" And n 


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Danke Hajo und Rudi!!!
04.07.2007 11:08:40
jjo
Vielen Dank für eure schnelle Hilfe. Hab den "ersten" Code von Hajo genomm und funzt einwandfrei!
Danke nochmal
Gruß
Jörg

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige