返回列表 上一主題 發帖

[發問] 小弟想教各位高手有關於抓取多個*.CSV 內的部份數據

回復 10# leoman0002

請說明圖片紅框的資料該如何對應?

   
學海無涯_不恥下問

TOP

抱歉我不太會整理資料 =.= 我不知道怎麼說明才好,我把相關的對應打在EXCEL 報表裡

其實以前有人寫,但是卻是含Access 資料庫方式寫,我們的電腦..只准用"WORD & EXCEL "
最後...我們還是用傳統的"手工"....希望大家能幫幫忙 謝謝

PS:如果拿Access 資料庫版改成不用Access 資料庫的方式會不會更麻煩?

資料匯集.rar (23.42 KB)

好可愛的寶寶

TOP

回復 12# leoman0002

不是很懂對應關係,測試看看差異在哪?
  1. Sub ex()
  2. fd = ThisWorkbook.Path & "\"
  3. fs = Dir(fd & "*.csv")
  4. Do Until fs = ""
  5. With Workbooks.Open(fd & fs)
  6.    With .Sheets(1)
  7.    lot = Replace(.[B6].Value, "'", "")
  8.    lin = Replace(Split(lot, "-")(0), Mid(Split(lot, "-")(0), 3, 5), "")
  9.    ps = Split(lot, "-")(1)
  10.    drv = .[D4].Value
  11.    tm = IIf(.[H12] = "Bef", "[Before]", "[After]")
  12.    ts = .[F12].Value
  13.    ar1 = Array(lot, lin, ps)
  14.    ar2 = Array(drv, tm, ts, ts)
  15.    Set ar3 = .[F21:F24]
  16.    Dim ar(24)
  17.    For i = 27 To 34
  18.       For j = 1 To 3
  19.         ar(s) = .Cells(i, j * 2).Value
  20.         s = s + 1
  21.       Next
  22.     Next
  23.    End With
  24.    With ThisWorkbook.Sheets("Test Data")
  25.    Set a = .[A65536].End(xlUp).Offset(1, 0)
  26.    a.Resize(, 3) = ar1
  27.    a.Offset(, 6).Resize(, 4) = ar2
  28.    a.Offset(, 10) = ar3(1, 1)
  29.    a.Offset(, 17) = ar3(2, 1)
  30.    a.Offset(, 18) = ar3(3, 1)
  31.    a.Offset(, 19) = ar3(4, 1)
  32.    a.Offset(, 20).Resize(, 24) = ar
  33.    End With
  34.    .Close 0
  35. End With
  36. fs = Dir
  37. Loop
  38. End Sub
複製代碼
學海無涯_不恥下問

TOP

不知道為什麼 抓第二筆就出現"陣列索引超出範圍"

我帶上我手上的csv 您幫我看看是哪裡有問題

其實剛剛我有按巨集..都沒反應..原來是csv要放在同一個資料匣,如果改成像選檔方式

會很困難嗎?

剪輯.jpg (147.86 KB)

剪輯.jpg

剪輯_2.jpg (323.86 KB)

剪輯_2.jpg

csv.rar (5.14 KB)

數個同類型的csv

好可愛的寶寶

TOP

看不懂規律性為何....

檔案內素質與提供之xls素質無法對照

  多做多想多學習,少看少錯少迷途

  多做=多多練習,多多編寫。
  多想=想想為什麼人家程式要那樣寫,如果換成自己,又會怎寫。
  多學習=學習人家的發問並解答,學習人家的寫法

  少看=只看不做也枉然

TOP

請問可以解釋您說的意思嗎? 我對EXCEL 真的沒有很了解
不過Hsieh 大大幫我轉到資料讓我看見道到署光 讓我好感動!!
我手頭上有一個ACCESS版,可是公司卻不能裝access 所以...讓事情變得相當麻煩
好可愛的寶寶

TOP

回復 16# leoman0002

最主要是對應欄位的問題,如果要抓取CSV檔案的位置都是相同的
你就要讓別人知道CVS的那些儲存格資料要寫入EXCEL的彙整檔案
欄位是如何對應?上傳的資料就應該要以上傳的內容作對應
你沒發現EXCEL手動填入的資料與你上傳的CVS內容不同嗎?
如果不是直接複製CVS儲存格內容,那就該說明資料的取得規則
學海無涯_不恥下問

TOP

你所說的的值跟手動的不同,是因為Hsieh 大大沒有注意到通用格式,所以儲存格改成通用格式就一樣了,這個我有發現儲存格的問題..我以為你有發現 >"<
好可愛的寶寶

TOP

回復 18# leoman0002
非也,有些欄位根本在CSV檔內找不到
學海無涯_不恥下問

TOP

本帖最後由 leoman0002 於 2013-4-25 06:55 編輯

嗯 你說的應該是我第二次說明的那次 N1AD24DC-1  判斷線別 N1C 的那種嗎
的確是非當麻煩,不過Hsieh 大大寫的那些就很夠我用了!!
但是要先解決陣列索引超出範圍 @@

我沒有很懂..僅懂些皮毛,Hsieh 大大寫得我還要花點時間去研究才行!!
學海無涯...突然發現自己好渺小
好可愛的寶寶

TOP

        靜思自在 : 有時當思無時苦,好天要積雨來糧。
返回列表 上一主題