yannosch
Goto Top

VBS: Ordner erstellen!

Guten Morgen liebe Community ! face-smile

Ich möchte einen neuen Ordner in ein bereit bestehendes Verzeichniss erstellen, sprich:


Dim objFSO, newDIR
Ziel= InputBox ("Gebe den Pfad an indem der persönliche Ordner des Users angelegt werden soll!")
Set objFSO = CreateObject("Scripting.FileSystemObject")
if objFSO.Folderexists(ziel) = false then
Set newDIR = objFSO.CreateFolder(ziel)
end if

Das Script wird ohne Fehlermeldung ausgeführt allerdings wird kein Ordner erstellt , wo liegt mein Fehler hier ?! face-sad

Liebe Grüße von
Y@nnosch! face-smile

Content-ID: 218751

Url: https://administrator.de/contentid/218751

Ausgedruckt am: 25.11.2024 um 06:11 Uhr

colinardo
colinardo 08.10.2013 um 08:47:39 Uhr
Goto Top
hast du zufällig den Pfad mit einem Backslash beendet ? wenn ja nimm diesen mal raus...

Grüße Uwe
Yannosch
Yannosch 08.10.2013 um 08:53:54 Uhr
Goto Top
Nein , alles richtig beendet ... allerdings habe ich auch kein Plan , wo dort der Name des Ordners festgelegt wird ... weiß das system dann überhaupt welchen Ordner, bzw welchen namen es vergeben muss ....
Yannosch
Yannosch 08.10.2013 aktualisiert um 09:16:13 Uhr
Goto Top
[Update] : Danke Uwe, auf dich war wiedermal verlass ! face-smile

Habe den Fehler selbst gefunden, aber vielen Dank für die Basis die du mir wiedereinmal geschaffen hast ....

Liebe Grüße ...

Ach ja .. noch eine frage ..
Hier der Code:

~Es gibt noch ein Array names Felder(0) <--- Dieses Array enthält beispielsweise den Username~

Dim objFSO, newDIR
Ziel= InputBox ("Gebe den Pfad an indem der persönliche Ordner des Users angelegt werden soll!")


Pfad = Ziel + "\" + Felder(0) <------------------------------ Das was hier steht will ich erreichen , aber ich denke so einfach klappt das nicht...


Set objFSO = CreateObject("Scripting.FileSystemObject")
if objFSO.Folderexists(Pfad) = false then
Set newDIR = objFSO.CreateFolder(Pfad)
else
MsgBox "Ordner existiert bereits!", vbexclamation
end if
colinardo
colinardo 08.10.2013 aktualisiert um 09:50:58 Uhr
Goto Top
Zitat von @Yannosch:
~Es gibt noch ein Array names Felder(0) <--- Dieses Array enthält beispielsweise den Username~

Dim objFSO, newDIR
Ziel= InputBox ("Gebe den Pfad an indem der persönliche Ordner des Users angelegt werden soll!")
Pfad = Ziel + "\" + Felder(0) <------------------------------ Das was hier steht will ich erreichen , aber ich
denke so einfach klappt das nicht...
warum nicht? wenn das Array korrekt mit Daten gefüllt ist und keine Sonderzeichen die nicht in einem Pfadnamen vorkommen dürfen enthält, geht es genau so (nur die "+" musst du durch ein "&" ersetzen).
Felder(0) = "Sepp Meier"  
Pfad = Ziel & "\" & Felder(0)  
Würde hier aber auf einen FolderBrowserDialog ausweichen, das ist zuverlässiger ...
Set objShell = CreateObject("Shell.Application")  
Set objFolder = objShell.BrowseForFolder(0,"Ordner wählen",0)  
If Not objFolder Is Nothing Then
	If objFolder.Self.Path <> "" Then  
		MsgBox objFolder.Self.Path
	End If
End If

Und bitte formatiere deine Codezeilen in Zukunft, damit uns hier nicht wichtige Zeichen abhanden kommen, merci.
sysinfo
sysinfo 08.10.2013 um 09:39:30 Uhr
Goto Top
Hallo Yannosch,

ich würde bei Strings immer mit dem " & " arbeiten. Ich finde es eindeutiger bei Strings.

Pfad = Ziel & "\" & Felder(0)

Siehe hier:

http://msdn.microsoft.com/de-de/library/te2585xw%28v=vs.90%29.aspx

Du beschreibst leider nicht wie das Array gefüllt wird. Stehen die richtigen Werte in dem Array?

Grundsätzlich sollte dein Script laufen.

Du solltest dich mal mit "folder browser" beschäftigen

http://www.robvanderwoude.com/vbstech_ui_browsefolder.php

oder

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774065%28v=vs ...

Bei einem Dialog kann man sich nicht verschreiben. Bei deiner Lösung wird es sicherlich zu Schreibfehlern in dem Pfadangaben kommen.

//Stephan
Yannosch
Yannosch 08.10.2013 aktualisiert um 09:57:25 Uhr
Goto Top
okay , läuft , danke dir Uwe ! ! face-smile
und dir auch Stephan , schaue mir die Seiten auf jedenfall mal an ..! face-smile

Liebe Grüße von
Y@nnosch! face-smile