之前我已经创建了一个脚本来从选项卡式分隔文本文件中获取某些行,第一行将以下每行放入其自己的.txt文件中。 (所以这些.txt文件只有2行文本)
然后它将按照在给定标签中找到的文本移动每个.txt文件,在这种情况下它是(1)(3)(第二行 - 第四个标签)
这是第一部分的代码......
Call TwoDimensionArrayTest
Sub TwoDimensionArrayTest
Dim fso
Dim oFile
Dim arrline
Dim arrItem
Dim i
Dim arrMain()
Dim sFileLocation, strResults
Const forReading = 1
strFolder = "\\nas001\Production\RxCut\In Design Implementation\build\" '"
Set objFSO = CreateObject("Scripting.FileSystemObject")
For Each objFile In objFSO.GetFolder(strFolder).Files
If Right(LCase(objFile.Name), 4) = LCase(".txt") Then
''# The file contains on each line:
''# Text1 (tab) Text2 (tab) Text3 (tab) Text4
''# Text5 (tab) Text6 (tab) Text7 (tab) Text8
''# etc etc
Set fso = CreateObject("Scripting.FileSystemObject")
sFileLocation = objFile.Name
Set oFile = fso.OpenTextFile(objFile.Name, forReading, False)
Do While oFile.AtEndOfStream <> True
strResults = oFile.ReadAll
Loop
''# Close the file
oFile.Close
''# Release the object from memory
Set oFile = Nothing
''# Return the contents of the file if not Empty
If Trim(strResults) <> "" Then
''# Create an Array of the Text File
arrline = Split(strResults, vbNewLine)
End If
For i = 0 To UBound(arrline)
If arrline(i) = "" Then
''# checks for a blank line at the end of stream
Exit For
End If
ReDim Preserve arrMain(i)
arrMain(i) = Split(arrline(i), vbTab)
Next
fso.MoveFile sFileLocation, arrMain(1)(3) & ".txt"
End If
Next
End Sub ''# TwoDimensionArrayTest
现在转到下一部分......
好吧我有一个带标签分隔的文本文件,在这个文件中我们已经在第一行第5个标签联合品牌,第6个标签三品牌和第7个通用上指定。
第二行我们有目录路径,无论是联合品牌,三品牌还是通用。
我希望能够做的是将一个给定的文件移动到我们可以称之为“group.txt”的联合品牌,三品牌或通用目录中,这取决于哪个字段是非NULL。
我怎样才能做到这一点?能够将其合并到指定结尾的最后一个脚本中会很好:
fso.MoveFile sFileLocation, arrMain(1)(3) & ".txt"
当然将取决于我在上面提到的NOT NULL字段。
非常感谢任何帮助, 乔
答案 0 :(得分:0)
我的猜测在最后(也许)是这样的:
如果不是isNull(Rs(“arrMain(1)(4)”))那么
设置sDirectory =“/ co-brand”
结束如果
如果不是isNull(Rs(“arrMain(1)(5)”))那么
设置sDirectory =“/ tri-brand”
结束如果
如果不是isNull(Rs(“arrMain(1)(6)”))那么
设置sDirectory =“/ generic”
结束如果
fso.MoveFile sFileLocation, sDirectory, arrMain(1)(3) & ".txt"