2014-03-06 70 views
0

假設我有許多HTML文檔,每個HTML文檔都具有相同的格式。雖然這些文件中的信息不在表格中,但總是有特定的關鍵詞可以將所需信息放在哪裏。有沒有辦法設置一個宏,以便Excel在每個文檔中搜索特定的「標題」,在標題的第一個空格之後返回所有字符,並且一旦它到達連續兩個空格就停下來?這個想法是將所有這些信息放入一列中,然後再用另一個「標題」開始這個過程。我真的不確定從這樣一個宏觀開始。將數據從多個HTML文件傳輸到Excel中

回答

2

這應該讓你關閉

MyPath = "path to folder containing HTML files" 

Set fso = CreateObject("Scripting.FileSystemObject") 
Set my_files = fso.getfolder(MyPath).Files 

For Each f1 In my_files 
    Set TxtStream = fso.OpenTextFile(path_fname, ForReading, False, TristateUseDefault)  
    my_var = "" 

    Do While Not TxtStream.AtEndOfStream 
     my_var = my_var & TxtStream.ReadLine 
    Loop 

    TxtStream.Close 

    pos_1 = instr(1, my_var, "your Title") 
    pos_2 = instr(pos_1, my_var, " ") 
    my_txt = mid(my_var, pos_1, pos_2 - pos_1) 
    ' do whatever with the captured text 
Next 
+0

感謝羅恩,我會給一個鏡頭! – 114

+0

我似乎有一個讓我的循環執行的問題,你有一個循環的例子可以運行大約2000個文件嗎? – 114

+0

您的所有HTML文檔是否位於一個文件夾中,並且它們是該文件夾中的唯一文件? – ron

相關問題