Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VBS: PDF Formular x-mal in Ordner kopieren und nach Liste umbenennen

Frage Entwicklung

Mitglied: Juweee

Juweee (Level 1) - Jetzt verbinden

12.10.2017, aktualisiert 13:14 Uhr, 140 Aufrufe, 1 Kommentar, 1 Danke

Moin
Leider hab ich für folgendes Problem nur einen theoretischen Ansatz:
In einem Ordner "Source" liegt ein einzelnes PDF-Formular.
Dieses Formular wird in einem Ordner analog des jeweils aktuellen Monats, z.b. 10.17., 11.17, usw. x-mal benötigt.
(soweit der Ordner noch nicht existiert soll erangelegt werden)
Die Anzahl der jeweiligen Kopien richtet sich nach einer Textdatei\CSV in der ";"-getrennt bis zu 12 Name stehen.
(z.B. Max M, Lieschen M, Horst V,...)
Am Ende sollen genauso viele Kopien der Einzeldatei aus Source mit den entsprechenden Namen im Monatsordner stehen.
Einige Dinge wie kopieren oder auch Ordner anlegen, ggf. prüfen nach Exist sind mir aus früheren kleinen Scripte klar, hierbei stehe ich allerdings ziemlich im Wald

Ich freu mich über alles was mir an der Stelle weiterhilft und sag schon mal Danke im Voraus

VG, Uwe
Mitglied: Kokosnuss
LÖSUNG 12.10.2017, aktualisiert um 13:45 Uhr
Wenn die CSV so aussieht, (keine Ahnung wie du das meintest (Du schreibst ; getrennt und oben dann mit Komma???)
01.
Name1 
02.
Name2 
03.
Name3 
04.
Name4
dann:
01.
Const ROOT = "C:\Ordner" 
02.
Const PDF = "D:\vorlage.pdf" 
03.
Const CSV = "D:\datei.csv" 
04.
Set fso = CreateObject("Scripting.FileSystemObject") 
05.
strDate = Right("0" & Month(Date),2) & "." & Right(Year(Date),2) 
06.
strFolder = ROOT & "\" & strDate 
07.
arrNames = Split(fso.OpenTextFile(CSV,1).ReadAll(),vbNewLine) 
08.
If Not fso.FolderExists(strFolder) Then fso.CreateFolder strFolder 
09.
For Each name In arrNames 
10.
	If Trim(name) <> "" Then 
11.
		strTarget = strFolder & "\" & Trim(name) & ".pdf" 
12.
		If Not fso.FileExists(strTarget) Then fso.CopyFile PDF,strTarget,False 
13.
	End If 
14.
Next 
15.
MsgBox "Fertig"
Wenn die CSV dagegen so aussieht
01.
Name1;Name2;Name3
dann:
01.
Const ROOT = "A:\test" 
02.
Const PDF = "A:\demo.pdf" 
03.
Const CSV = "A:\datei.csv" 
04.
Set fso = CreateObject("Scripting.FileSystemObject") 
05.
strDate = Right("0" & Month(Date),2) & "." & Right(Year(Date),2) 
06.
strFolder = ROOT & "\" & strDate 
07.
arrNames = Split(fso.OpenTextFile(CSV,1).ReadAll(),";") 
08.
If Not fso.FolderExists(strFolder) Then fso.CreateFolder strFolder 
09.
For Each name In arrNames 
10.
	If Trim(name) <> "" Then 
11.
		strTarget = strFolder & "\" & Trim(name) & ".pdf" 
12.
		If Not fso.FileExists(strTarget) Then fso.CopyFile PDF,strTarget,False 
13.
	End If 
14.
Next 
15.
MsgBox "Fertig"
Rechnung kommt dann per Post ...
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Ordner anhand einer Excel-Liste kopieren (6)

Frage von xsto123 zum Thema Batch & Shell ...

Sonstige Systeme
PDF-Formulare mit handschriftlicher Unterschrift (19)

Frage von FenjaW zum Thema Sonstige Systeme ...

Windows Server
Ordner umbenennen nicht möglich (8)

Frage von carbon1X zum Thema Windows Server ...

Entwicklung
gelöst PDF-Formular: Dropdown aus XML füllen (1)

Frage von Juweee zum Thema Entwicklung ...

Neue Wissensbeiträge
Virtualisierung

Docker Monitoring und Steuerung per "sen"

Tipp von Frank zum Thema Virtualisierung ...

Viren und Trojaner

Neues Botnetz über IoT-Geräte

(6)

Information von certifiedit.net zum Thema Viren und Trojaner ...

Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Heiß diskutierte Inhalte
Windows Installation
Windows 10 neu installieren (17)

Frage von imebro zum Thema Windows Installation ...

Router & Routing
Externe IP von innen erreichbar machen (15)

Frage von Windows10Gegner zum Thema Router & Routing ...

Windows 7
Abbruch bei Brennvorgang (12)

Frage von Simulant zum Thema Windows 7 ...