在文件中查找2个字符串,并使用Excel VBA将其分配给数组

时间:2015-03-09 13:22:32

标签: arrays excel excel-vba vba

我试过在下面的代码的帮助下在文件中查找单个字符串并将字符串分配给数组

strSearchFor = "Call result: Successful"
    Set objFSO = CreateObject("Scripting.FileSystemObject")
        Set objTextFile = objFSO.OpenTextFile("E:\Documents\logs.txt", 1)
        Set ObjShell = CreateObject("wscript.shell")
            strFilecontent = objTextFile.ReadAll

            arrFileContent = Split(strFilecontent, strSearchFor)

但是现在我很难在文件中找到两个变量并分配给某个数组。

示例:我需要搜索2个字符串,如“调用结果:成功”和&文件中的“调用结果:失败”。搜索之后,我需要将结果存储在Array(arrFileContent)

我也可以知道如何在Excel VB中浏览和读取文件。 现在,我已经硬编码为“E:\ Documents \ logs.txt”,

请帮助以上的那些。谢谢

2 个答案:

答案 0 :(得分:0)

获取用户指定的文件,代替硬编码:

Dim myFile as string

myFile = Application.GetOpenFilename()

答案 1 :(得分:0)

如果你需要从strSearchFor字符串创建一个数组,那么, 而不是这个:

arrFileContent = Split(strFilecontent, strSearchFor)
你可以试试这个:

If InStr(1, strFilecontent, strSearchFor, vbTextCompare) >= 1 Then
    arrFileContent = Array(strSearchFor)
else
   ....
End If