Guten Morgen,
ich arbeite bei einem Bildungsträger, wo wir regelmäßig für neue Kunden Aufnahmegespräche führen und dann Ordner anlegen müssen.
Die Daten aller Kunden werden zunächst in eine Excel-Tabelle eingetragen, in der die ersten Felder so aussehen:
Das Erzeugen neuer Ordner für die Kunden habe ich bereits mittels eines Makros gelöst. Die Einträge aus der Liste (mit dem Grenzbereich der Eingabebox) werden im Ordner Neukunden angelegt. Die Form ist immer Name_Vorname_Kundennummer.
Woran ich gerade knabbere, ist das Kopieren der zwei Startdateien (Gesprächsdokumentation und F_5_8_Bericht, beide .docx-Format). Ihr seht auskommentierte Codezeilen mit FileCopy. Ich habe diesen Riesenpsalm mit Name_Vorname_Kundennummer lieber in den String Kundenname gepackt, statt jedes Mal drei ActiveSheet.Cells zu verknüpfen.
Ich möchte nun die beiden Dateien Gesprächsdokumentation und F_5_8_Bericht aus dem Vorlageordner Blanko Kundenakte in die neu erzeugten Kundenordner kopieren und bereits für jeden neuen Kunden umbenennen, dass sie dann Name_Vorname_Kundennummer_Gesprächsdokumentation.docx (also Muster_Max_999D111222_Gesprächsdokumentation.docx) und Name_Vorname_Kundennummer_F_5_8_Teilnehmerbezogener Bericht.docx heißen.
FileCopy spuckt jedoch immer einen Syntaxfehler aus? Ich habe es schon mit Klammersetzung probiert, um die beiden Argumente besser zu trennen. Oder kann es daran liegen, dass er innerhalb eines Netzwerklaufwerks kopieren soll?
Bin für jeden Tipp dankbar!
Viele Grüße,
Benny
ich arbeite bei einem Bildungsträger, wo wir regelmäßig für neue Kunden Aufnahmegespräche führen und dann Ordner anlegen müssen.
Die Daten aller Kunden werden zunächst in eine Excel-Tabelle eingetragen, in der die ersten Felder so aussehen:
lfd. Nr. | Name | Vorname | Geburtsdatum | Kundennummer | (Spalte 30) |
1 | Muster | Max | 12.03.1960 | 999D111222 | eingemündet |
2 | Müller | Stefanie Daniela | 14.05.1980 | 333A123456 | eingemündet |
Das Erzeugen neuer Ordner für die Kunden habe ich bereits mittels eines Makros gelöst. Die Einträge aus der Liste (mit dem Grenzbereich der Eingabebox) werden im Ordner Neukunden angelegt. Die Form ist immer Name_Vorname_Kundennummer.
Visual Basic-Quellcode
- Sub OrdnerAnlegen()
- Dim lngI As Long
- Dim Start As Long
- Dim Ende As Long
- Dim Kundenname As String
- Start = InputBox("Erster Eintrag (Excel-Zeile, nicht laufende Nummer):")
- Ende = InputBox("Letzter Eintrag:")
- For lngI = Start To Ende
- Kundenname = ActiveSheet.Cells(lngI, 2).Text & "_" & ActiveSheet.Cells(lngI, 3).Text & "_" & ActiveSheet.Cells(lngI, 5).Text
- MkDir "X:\Oberlaufwerk\6_Berichte\6_2_Teilnehmerbezogene Berichte\Neukunden\" & Kundenname
- ' fehlerhafter Code
- ' FileCopy("X:\Oberlaufwerk\6_Berichte\6_2_Teilnehmerbezogene Berichte\Blanko Kundenakte_Bitte KOPIEREN\Name_Vorname_Kd.Nr._F_5_8_Teilnehmerbezogener Bericht_TC_SGB2.docx", ("X:\Oberlaufwerk\6_Berichte\6_2_Teilnehmerbezogene Berichte\Neukunden\" & Kundenname & "_Bericht.docx"))
- ' fehlerhafter "alter" Code (Langform ohne String Kundenname)
- ' " & ActiveSheet.Cells(lngI, 2).Text & "_" & ActiveSheet.Cells(lngI, 3).Text & "_" & ActiveSheet.Cells(lngI, 5).Text & "\" & ActiveSheet.Cells(lngI, 2).Text & "_" & ActiveSheet.Cells(lngI, 3).Text & "_" & ActiveSheet.Cells(lngI, 5).Text & "_F_5_8_Teilnehmerbezogener Bericht_TC_SGB2.docx"))
- Next lngI
- End Sub
Woran ich gerade knabbere, ist das Kopieren der zwei Startdateien (Gesprächsdokumentation und F_5_8_Bericht, beide .docx-Format). Ihr seht auskommentierte Codezeilen mit FileCopy. Ich habe diesen Riesenpsalm mit Name_Vorname_Kundennummer lieber in den String Kundenname gepackt, statt jedes Mal drei ActiveSheet.Cells zu verknüpfen.
Ich möchte nun die beiden Dateien Gesprächsdokumentation und F_5_8_Bericht aus dem Vorlageordner Blanko Kundenakte in die neu erzeugten Kundenordner kopieren und bereits für jeden neuen Kunden umbenennen, dass sie dann Name_Vorname_Kundennummer_Gesprächsdokumentation.docx (also Muster_Max_999D111222_Gesprächsdokumentation.docx) und Name_Vorname_Kundennummer_F_5_8_Teilnehmerbezogener Bericht.docx heißen.
FileCopy spuckt jedoch immer einen Syntaxfehler aus? Ich habe es schon mit Klammersetzung probiert, um die beiden Argumente besser zu trennen. Oder kann es daran liegen, dass er innerhalb eines Netzwerklaufwerks kopieren soll?
Bin für jeden Tipp dankbar!
Viele Grüße,
Benny