问题:
我有10,000个编号的文件夹。例如:
根/ 7000-8000 /七千四百七十三分之七千四/
根/ 3000-4000 /三千八百四十六分之三千八/
这些网络文件夹是“单元文件夹”,包含我公司销售的每个“单元”的所有文档,设计,照片,会计等数据。这些文档由子目录组织。每天有数十名员工将这些文件夹引用数百次。不断深入到您正在寻找的文件夹是很繁琐的。
我想要的是什么:
我想创建一个简单的输入框,用户只需要输入1到100,000之间的单位编号,然后按回车键。系统将自动打开相应的“单元文件夹”。
如何:
我正在寻找帮助我弄清楚我需要学习哪种脚本语言来完成这项工作的人,特别是我应该研究哪些功能,以及我应该知道的任何交易破坏者。
我需要某种输入框,越简单越好,可以留在桌面或任务栏中。接下来我需要解析输入数字,并将它们分解为数千,数百,数十等。然后我需要将这些变量组装到目标文件夹中,以创建发送给资源管理器的正确命令。最后,如果出现问题,我需要发出错误。
提前感谢任何建议!
答案 0 :(得分:0)
我们弄清楚了。如果其他人遇到类似这样的内容,则会在下面附上代码:
Option Explicit
Private Function CheckPath(strPath As String) As Boolean
Dim fso As New FileSystemObject
If fso.FolderExists(strPath) Then
CheckPath = True
Else
CheckPath = False
End If
End Function
''''''''''''''''''
Private Sub cmdGo_Click()
Dim unit As Double 'unit number
Dim unitTh As Integer 'for thousand of unit
Dim unitHu As Integer 'for hundred of unit
Dim locationstring As String 'for string to store folder location
Dim Exists As Boolean 'ensure folder exists
locationstring = "Z:\Unit Folders\"
If Val(txtUnit.Text) > 90000 Then
unit = Val(txtUnit.Text) - 90000
unitHu = Fix(unit / 100)
locationstring = locationstring & "RTB90000-90999\RTB"
locationstring = locationstring & "90" & unitHu & "00"
locationstring = locationstring & "\RTB90" & unit & "\"
Else
unit = Val(txtUnit.Text)
unitTh = Fix(unit / 1000)
If unit > 10000 Then
unitTh = unitTh + 10
End If
unitHu = Fix((unit - unitTh * 1000) / 100)
locationstring = locationstring & unitTh & "000-" & unitTh & "999\"
locationstring = locationstring & unitTh & unitHu & "00"
locationstring = locationstring & "\" & unit & "\"
End If
Exists = (CheckPath(locationstring))
Dim x
If Exists Then
x = Shell("c:\windows\explorer.exe " & locationstring, vbNormalFocus)
Else
MsgBox ("Folder does not exist")
End If
End Sub