簡體   English   中英

從眾多文本文件中提取多行數據,並關聯到Excel中

[英]Extract multiple lines of data from numerous text files and correlate into Excel

關於如何從以下位置修改腳本的任何建議:

從眾多文本文件中提取一行數據並導入Excel

要生成一個Excel工作表,該工作表的文件名位於一列(.ini文件的文件名),第二列中的緯度,第三列中的經度? 我也有一堆.ini文件,其中包含.jpg的相機參數,但需要提取Name,Lat和Long進行進一步處理。

這是.ini文件的示例:


[top_left]
lng =  -80.5251854921
lat =   46.6276919869

[top_right]
lng =  -80.5307483620
lat =   46.6297628116

[bottom_left]
lng =  -80.5229096407
lat =   46.6307857000

[bottom_right]
lng =  -80.5281836560
lat =   46.6327636148

[center]
lng =  -80.5267096969
lat =   46.6302821844

[origin]
Xs =       319.50000
Ys =       239.50000

[map]
A00 =         0.0008197901
A01 =        -0.0085907931
A02 =       -80.5267154968
A10 =        -0.0004764527
A11 =         0.0049839176
A12 =        46.6302857603
A20 =        -0.0000102856
A21 =         0.0001067452
A22 =         1.0000000000

[frameTimestamp]
frameTs = 0

我嘗試使用某些代碼從一個文件夾中的多個文本文件提取數據到excel工作表中 ,但收效甚微。

這應該做您想要的-但沒有錯誤處理-它假定每個文件都按照示例中的顯示進行布局。 另外,我假設任何緯度/經度對都可以,並且您只想要其中一個。 因此,我提取了與“ top_left”關聯的那個。 同樣,所有.ini文件都位於C:Temp \\ Test目錄中,並假定您希望將數據追加到ActiveSheet的最后一行之后:

Option Explicit

Sub ExtractLatLng()
    Dim MyFolder As String, MyFile As String, textline As String
    Dim r As Integer, pos As Integer

    MyFolder = "C:\Temp\Test\"
    MyFile = dir(MyFolder & "*.ini")

    r = ActiveSheet.Cells(ActiveSheet.Rows.Count, "A").End(xlUp).row + 1
    Do While MyFile <> ""
        Open (MyFolder & MyFile) For Input As #1
        Do Until EOF(1)
          Line Input #1, textline
          pos = InStr(textline, "[top_left]")
          If pos = 1 Then
             ActiveSheet.Cells(r, "A").Value = MyFile
             Line Input #1, textline
             pos = InStr(textline, "=")
             ActiveSheet.Cells(r, "C").Value = Mid(textline, pos + 1)
             Line Input #1, textline
             pos = InStr(textline, "=")
             ActiveSheet.Cells(r, "B").Value = Mid(textline, pos + 1)
             r = r + 1
             Exit Do
          End If
        Loop
        Close #1
        MyFile = dir()
    Loop 
End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM