Board logo

標題: [發問] 請高手指導如何將文字檔內的數值轉到EXCELL內 [打印本頁]

作者: lcctno    時間: 2016-8-26 09:32     標題: 請高手指導如何將文字檔內的數值轉到EXCELL內

本帖最後由 lcctno 於 2016-8-26 09:33 編輯

請高手指導如何將文字檔內的數值轉到EXCELL內 感謝熱心人的教導



日期               收盤價   開盤價        最高價        最低價        交易量        百分比
2016年8月26日        47.33        47.35        47.38        47.31        -        -0.04%
2016年8月25日        47.35        46.76        47.44        46.42        -        1.24%
2016年8月24日        46.77        47.59        47.74        46.45        -        -2.77%
2016年8月23日        48.10        47.39        48.32        46.59        623.90K        2.23%
2016年8月22日        47.05        48.40        48.40        46.75        36.53K        -3.03%
2016年8月19日        48.52        48.33        48.75        47.93        162.44K        0.62%
2016年8月18日        48.22        46.90        48.38        46.63        229.28K        3.06%
2016年8月17日        46.79        46.37        46.95        45.84        563.35K        0.45%
2016年8月16日        46.58        45.59        46.73        45.34        550.44K        1.84%
2016年8月15日        45.74        44.74        45.93        44.38        522.53K        2.81%
2016年8月12日        44.49        43.46        44.78        43.31        536.08K        2.30%
2016年8月11日        43.49        41.48        43.86        41.10        682.24K        4.27%
2016年8月10日        41.71        42.74        43.39        41.42        676.15K        -2.48%
2016年8月9日        42.77        42.83        43.52        42.47        624.70K        -0.58%
2016年8月8日        43.02        41.99        43.39        41.81        562.53K        2.92%
2016年8月5日        41.80        41.84        42.10        41.06        550.19K        -0.31%
2016年8月4日        41.93        41.16        42.08        40.43        598.84K        2.69%
2016年8月3日        40.83        39.70        41.20        39.19        655.19K        3.34%
2016年8月2日        39.51        40.08        40.91        39.26        534.51K        -1.37%
2016年8月1日        40.06        41.35        41.88        39.82        533.02K        -3.70%
2016年7月29日        41.60        41.12        41.67        40.57        478.76K        1.12%
2016年7月28日        41.14        41.93        42.22        41.04        447.91K        -1.86%
2016年7月27日        41.92        42.66        43.20        41.68        537.39K        -2.33%
2016年7月26日        42.92        43.07        43.39        42.36        461.32K        -0.49%
2016年7月25日        43.13        44.20        44.37        42.97        389.84K        -2.40%
2016年7月22日        44.19        44.60        44.97        43.74        428.41K        -1.25%
2016年7月21日        44.75        45.65        46.09        44.52        432.97K        -0.42%
2016年7月20日        44.94        44.59        45.25        43.69        29.39K        0.65%
2016年7月19日        44.65        45.23        45.67        44.53        128.13K        -1.30%
2016年7月18日        45.24        46.12        46.14        44.86        211.39K        -1.55%
2016年7月15日        45.95        45.52        46.33        45.05        430.26K        0.59%
2016年7月14日        45.68        45.14        45.80        44.95        573.76K        2.08%
2016年7月13日        44.75        46.58        46.71        44.56        686.25K        -4.38%
2016年7月12日        46.80        44.58        46.93        44.51        658.26K        4.56%
2016年7月11日        44.76        45.07        45.77        44.42        533.66K        -1.43%
2016年7月8日        45.41        45.19        45.97        44.77        583.08K        0.60%
2016年7月7日        45.14        47.88        48.25        44.87        710.89K        -4.83%
2016年7月6日        47.43        46.83        47.95        45.92        607.66K        1.78%
2016年7月5日        46.60        49.11        49.35        46.33        609.19K        -4.21%

[attach]25052[/attach]
[attach]25053[/attach]

~原油.zip 內有文字檔及EXCELL檔
[attach]25054[/attach]
作者: zyzzyva    時間: 2016-8-27 09:09

可以用文字匯入精靈,如果不太熟悉操作,google一下[excel 匯入文字檔],有很多教學資料。
作者: GBKEE    時間: 2016-8-27 21:13

回復 1# lcctno

試試看
  1. Option Explicit
  2. Sub Ex()
  3.     Dim ST, xAr, Ar()
  4.     '**需修改為原油.TXT正確的資料夾****
  5.     Open "D:\原油.TXT" For Input As #1
  6.     '**********************************
  7.     ReDim Ar(0)
  8.     Do While Not EOF(1)
  9.         Line Input #1, ST
  10.         xAr = Split(ST, vbTab)
  11.         If UBound(Ar) = 0 Then xAr = Array("日期", "收盤價", "開盤價", "最高價", "最低價", "交易量", "百分比")
  12.         Ar(UBound(Ar)) = xAr
  13.         If Not EOF(1) Then ReDim Preserve Ar(0 To UBound(Ar) + 1)
  14.     Loop
  15.     Close #1
  16.     With Sheets(1)
  17.         .UsedRange.Clear
  18.         .Range("a1").Resize(UBound(Ar) + 1, 7) = Application.Transpose(Application.Transpose(Ar))
  19.     End With
  20. End Sub
複製代碼

作者: lcctno    時間: 2016-8-28 07:38

回復 3# GBKEE
感謝版大的教導 是可以拿到我要的資訊
但 奇怪的是 為何日期的格式 我不能變更為 "2016/08/26"(本來是可以的)
但跑出來的值 我怎麼試都還是"2016年8月26日"
雖無大礙 但很好奇為何會這樣???
作者: GBKEE    時間: 2016-8-28 08:36

回復 4# lcctno
  1. Option Explicit
  2. Sub Ex()
  3.     Dim ST, xAr, Ar()
  4.     '**需修改為原油.TXT正確的資料夾****
  5.     Open "D:\原油.TXT" For Input As #1
  6.     'Open ThisWorkbook.Path & "\原油.TXT" For Input As #1
  7.     '**********************************
  8.     ReDim Ar(0)
  9.     Do While Not EOF(1)
  10.         Line Input #1, ST
  11.         xAr = Split(ST, vbTab)           'Split
  12.         'Split 函數 傳回一個陳列索引從零開始的一維陣列,它包含指定數目的子字串。
  13.         '這一維陣列的內容都是文字
  14.         If UBound(Ar) = 0 Then xAr = Array("日期", "收盤價", "開盤價", "最高價", "最低價", "交易量", "百分比")
  15.         Ar(UBound(Ar)) = xAr
  16.         If Not EOF(1) Then ReDim Preserve Ar(0 To UBound(Ar) + 1)
  17.     Loop
  18.     Close #1
  19.     With Sheets(1)
  20.         .UsedRange.Clear
  21.         .Range("a1").Resize(UBound(Ar) + 1, 7).Value = Application.Transpose(Application.Transpose(Ar))
  22.         With .UsedRange.Columns(1).Offset(1)
  23.             '** 修改為日期格式 ***
  24.             .Replace "年", "/"
  25.             .Replace "月", "/"
  26.             .Replace "日", ""
  27.         End With
  28.     End With
  29. End Sub
複製代碼

作者: 准提部林    時間: 2016-8-28 11:33

可以用excel直接開啟文字檔:
  1. Sub TEST()
  2. Dim MySht As Worksheet
  3. Set MySht = ActiveSheet
  4. MySht.UsedRange.Clear
  5. Application.ScreenUpdating = False
  6. With Workbooks.Open(ThisWorkbook.Path & "\原油.txt")
  7.      MySht.[A:G] = .Sheets(1).[A:G].Value
  8.      .Close 0
  9.      MySht.[A1:G1] = Split("日期 收盤價 開盤價 最高價 最低價 交易量 百分比", " ")
  10. End With
  11. End Sub
複製代碼





歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)