Hallo in die Runde,
Ich möchte doch nur einen Dateinamen aus ner Tabellezelle abgucken, diese Datei in einem fixen Pfad suchen lassen,
wenn sie gefunden wurde sie zu öffnen und falls nicht ne MsgBox dass sie halt nicht gefunden wurde.
Bitte bitte schau mal jemand drüber. Was mache ich verkehrt? Er bleibt bereits beim Ablesen der zelle C158 hängen.
Auf Grund meiner miesen VBA skills kommentiere ich etwas naiv, daher erklärt sich schon durch die Kommentierung was ich mit anschließendem Code bezwecken will . . .
Was GENAU gemacht werden soll:
In einem fixen Ordner sind zu jedem Auftrag Gewinn/Verlust-Übersicht-Dateien als einzelne xlsx und xlsm Dateien gespeichert.
Die Dateinamen beginnen IMMER mit GER und einer 8stelligen Zahl gefolgt von Datum und Kundennamen.
Mit einer Rechnungsvorlage erstelle ich zu diesen Auftragsnummern GER….. Rechnungen. Die Rechnungsbeträge müssen in diese Gewinn und Verlust Dateien übertragen werden.
Nun möchte ich (erstmal "nur") über einen CommadButton in der Rechnung die dazugehörige Gewinn-und-Verlust-Datei öffnen.
Dazu soll VBA diesen Dateinamen aus einer Zelle in der Rechnung auslesen (Tabelle3.C158),
in dem festgelegten Pfad nach der Datei suchen und sie öffnen. Sollte diese wider Erwarten nicht gefunden werden, dann eine MsgBox öffnen "Datei nicht gefunden!".
Einziges Problem: Da die GER-Nummer nur ein Teil des Dateinamens ist habe ich in meinem Code bis jetzt vergeblich versucht die fehlenden Zeichen mit * zu umgehen, sodass die Suche lautet : Nehme Auftragsnummer GER……. aus Zelle C158 von Tabelle3, ignoriere dabei alle nachfolgenden Zeichen des Dateinamens öffne die Datei. Dieses Makro wollte ich dann einem CommandButton auf der Rechnung zuweisen, um direkt bei der rechnungerstellung die dazugehörige Costcard mit nur 1 Click zu öffnen.
I werd närrisch
Vielen vielen Dank an Alle, die sich damit beschäftigen.´ und nicht im Biergarten sitzen
Liebe Grüße
Jürgen
Ich möchte doch nur einen Dateinamen aus ner Tabellezelle abgucken, diese Datei in einem fixen Pfad suchen lassen,
wenn sie gefunden wurde sie zu öffnen und falls nicht ne MsgBox dass sie halt nicht gefunden wurde.
Bitte bitte schau mal jemand drüber. Was mache ich verkehrt? Er bleibt bereits beim Ablesen der zelle C158 hängen.
Auf Grund meiner miesen VBA skills kommentiere ich etwas naiv, daher erklärt sich schon durch die Kommentierung was ich mit anschließendem Code bezwecken will . . .
Code:
Sub Costcard_open()
'Suchbegriff innerhalb eines Dateinamens (Positionsnummer) definieren
Dim PosiNummer As String
'Dateinamen (Costcarddatei) definieren
Dim Dateiname As String
'Dateipfad zu den Costcards definieren
Dim Pfad As String
' Den gesuchten Wert (PosiNummer), also den Suchbegriff innerhalb des Dateinamens auslesen
PosiNummer = Worksheets("Tabelle3").Range("C158").Value
' Festlegen in welchem Ordner nach der Costcard gesucht werden soll
Pfad = "P:\BH\Auftrag Abrechnung\Costcards\"
' Costcard suchen im Pfad zu den Costcards und
' Dateinamen mit "*" ergänzt um fehlende Zeichen im Dateinamen nach der PosiNummer zu umgehen und
' zur Dateiendung ".xls*" ergänzt um xlsx UND xlsm Dateien zu finden
Dateiname = Dir(Pfad & Dateiname & "*.xls*")
' Wenn/Dann-Anweisung mit Hinweis, falls Datei nicht gefunden wurde
If Dateiname <> "" Then
Workbooks.Open Pfad & Dateiname
Else
MsgBox "Costcard nicht gefunden !"
End If
End Sub
Was GENAU gemacht werden soll:
In einem fixen Ordner sind zu jedem Auftrag Gewinn/Verlust-Übersicht-Dateien als einzelne xlsx und xlsm Dateien gespeichert.
Die Dateinamen beginnen IMMER mit GER und einer 8stelligen Zahl gefolgt von Datum und Kundennamen.
Mit einer Rechnungsvorlage erstelle ich zu diesen Auftragsnummern GER….. Rechnungen. Die Rechnungsbeträge müssen in diese Gewinn und Verlust Dateien übertragen werden.
Nun möchte ich (erstmal "nur") über einen CommadButton in der Rechnung die dazugehörige Gewinn-und-Verlust-Datei öffnen.
Dazu soll VBA diesen Dateinamen aus einer Zelle in der Rechnung auslesen (Tabelle3.C158),
in dem festgelegten Pfad nach der Datei suchen und sie öffnen. Sollte diese wider Erwarten nicht gefunden werden, dann eine MsgBox öffnen "Datei nicht gefunden!".
Einziges Problem: Da die GER-Nummer nur ein Teil des Dateinamens ist habe ich in meinem Code bis jetzt vergeblich versucht die fehlenden Zeichen mit * zu umgehen, sodass die Suche lautet : Nehme Auftragsnummer GER……. aus Zelle C158 von Tabelle3, ignoriere dabei alle nachfolgenden Zeichen des Dateinamens öffne die Datei. Dieses Makro wollte ich dann einem CommandButton auf der Rechnung zuweisen, um direkt bei der rechnungerstellung die dazugehörige Costcard mit nur 1 Click zu öffnen.
I werd närrisch
Vielen vielen Dank an Alle, die sich damit beschäftigen.´ und nicht im Biergarten sitzen
Liebe Grüße
Jürgen