Newbie braucht Hilfe bei einer kleinen Prozedur!:D

Hallo Experten,

ich hoffe ihr könnt mir helfen, ich benötige eine relativ kleine Prozedur in VBA und hänge da etwas fest (Anfänger):

Diese Prozedur soll das aktuelle Datum (Systemzeit)im Format mmmm_yy mit den Dateinamen in einem Ordner vergleichen, die nach dem Muster „informationen_mmmm_yy.xls“ vorhanden sind.
Falls eine entsprechende Datei vorhanden ist, soll er sie öffnen und eine Prozedur namens ListeAusfuellen() überspringen.

Beispiel:

Aktuelle Systemzeit (Datum): 22.03.2004
=> märz_04

Vergleich mit Dateien im Ordner „Informationen“ ==> „informationen_märz_04“ vorhanden??

Ja => Datei öffnen, Prozedur ListeAusfuellen() überspringen
Nein => Datei „informationen.xls“ öffnen (keine Funktion überspringen)

Diese Prozedur soll wenn möglich später als Makro in die Systemleiste von Excel eingebunden werden.

Könnt ihr mir Tipps geben mit welchen Funktionen ich diese Prozedur möglichst einfach schreiben kann, sollte nicht allzu kompliziert werden!?
Ihr wisst ja, viele Wege führen nach Rom…ich würd gern den einfachsten nehmen! :wink:

Liebe Grüße
Stefan

Hallo Stefan,

also klein und bescheiden ist deine Prozedur ja nicht gerade. Hoffentlich arbeitest du mit Excel2000 oder höher, sonst hilft dir meine Prozedur nicht.

Gehe in Excel in den VB-Editor und lege dort ein neues Modul an.

Public fso As New FileSystemObject

sub suchen_datei()
dim dateiname as string, datei as file

dateiname = „c:\informationen\informationen_“ & format(date,„MMMM_JJ“) & „.xls“
On Error Resume Next
set datei = fso.getfile(dateiname)
if err then
on error goto 0
workbooks.open „c:\informationen\informationen.xls“
ListeAusfuellen
else
on error goto 0
workbooks.open dateiname
endif
end sub

So und nun mußt du dem Modul noch im Menu Extras/Verweise einen Verweis auf Microsoft-Scripting-Runtime einrichten.

… und ab geht die Post - hoffentlich.

Zum Einbinden in eine Menuleiste mußt du dich durch Extras/anpassen in der Excel-Oberfläche kämpfen.

lg Maria

Vielen Dank, ich werde das jetzt mal ausprobieren!
Danke danke danke ich melde mich dann wenn ich weitergekommen bin!

Gruß
DerStefan