2012-11-21 107 views
1

对不起,这是所有这些新东西。我目前正在尝试将基本脚本放在一起,以基于使用输入创建文件夹。我可以达到可以完成输入并创建文件夹的位置,但不能使用输入框数据。根据用户输入创建一个文件夹vbscript

dim UserName 

UserName = InputBox ("Please enter user name") 

if Username = "" then 
MsgBox("No username entered") 

do while(UserName = "") 
UserName = InputBox ("Please enter user name") 
    if Username = "" then 
    MsgBox("No Username entered") 
    else 
    MsgBox("Please click OK to continue") 
    end if 
Loop 

else 
MsgBox ("Please click ok to continue") 

end if 

Set objShell = CreateObject("Wscript.Shell") 
objShell.Run "cmd /c mkdir c:\temp\UserName" 

正如我所说,这是非常新的,所以我打开任何提示或指针在正确的方向。

干杯提前

+0

使用FileSystemObject。 – SLaks

+0

使用Scripting.FileSystemObject接口的“CreateFolder”方法。 – Skatterbrainz

回答

0

为了得到它的工作,你所要做的就是改变最后一行是:

objShell.Run "cmd /c mkdir c:\temp\" & UserName 

您使用的UserName的值,而不是单词的用户名这样。

通过提示的方式...

你的流量是有点多余,您可以通过更新您的循环做同样的事情。这里是一个可能的途径:

dim UserName 
Do 
    UserName = InputBox ("Please enter user name") 
    If UserName = "" then 
     Msgbox "No Username entered" 
    end if 
Loop Until UserName <> "" 

MsgBox "Please click OK to continue" 

Set objShell = CreateObject("Wscript.Shell") 
objShell.Run "cmd /c mkdir c:\temp\" & UserName 

此外,它可能是更好的只是最终的脚本,如果UserName = ""因为""是的InputBox的返回值,如果取消被点击。

+0

谢谢你的帮助丹尼尔,会在船上提出建议。 – user1843541

1

我不明白为什么人们把一切都这么复杂。一个非常简单的脚本在这里:

*strfolder = InputBox("Please enter a name for your new folder:") 
set objFSO = CreateObject("Scripting.FileSystemObject") 
objFSO.CreateFolder "c:\" & strfolder* 
相关问题