Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9901 / 13644 ツリー ←次へ | 前へ→

【24871】ファイルの取り込みに付いて 05/5/12(木) 11:45 質問[未読]
【24873】Re:ファイルの取り込みに付いて Jaka 05/5/12(木) 11:52 発言[未読]
【24875】Re:ファイルの取り込みに付いて 05/5/12(木) 12:01 発言[未読]
【24876】Re:ファイルの取り込みに付いて Jaka 05/5/12(木) 12:40 発言[未読]
【24877】Re:ファイルの取り込みに付いて 05/5/12(木) 12:54 発言[未読]
【24881】Re:ファイルの取り込みに付いて 05/5/12(木) 14:13 お礼[未読]

【24871】ファイルの取り込みに付いて
質問    - 05/5/12(木) 11:45 -

引用なし
パスワード
   こんにちわ。猫です。
現在次の形で外部からCSVファイルを取り込んでいるのですが、
セルのAからACまでのデータを取り込んでいると、
AB以降のデータがすべてABに,区切りでつながってしまいます。

| AB | AC |                | AB | AC |
----------- これが次のようになります→  -----------
| 1 | 2 |                | 1,2|  |

ソースは次のように書いています。

  With ActiveSheet.QueryTables.Add(Connection:= _
    "TEXT;test.text", Destination:=Range("A4"))
    .FieldNames = True
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .RefreshStyle = xlInsertDeleteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .TextFilePromptOnRefresh = False
    '.TextFilePlatform = xlWindows
    .TextFilePlatform = _
      IIf(Val(Application.Version) >= 10, 932, xlWindows)
    .TextFileStartRow = 1
    .TextFileParseType = xlDelimited
    .TextFileTextQualifier = xlTextQualifierDoubleQuote
    .TextFileConsecutiveDelimiter = False
    .TextFileTabDelimiter = False
    .TextFileSemicolonDelimiter = False
    .TextFileCommaDelimiter = True
    .TextFileSpaceDelimiter = False
    .TextFileColumnDataTypes = Array(1, 2, 2, 2)  '←ここの意味が判らない
    .Refresh BackgroundQuery:=False
  End With

どなたか原因が判る方教えてください。

【24873】Re:ファイルの取り込みに付いて
発言  Jaka  - 05/5/12(木) 11:52 -

引用なし
パスワード
   え〜と、CSVファイルのデータがどんな風になっているのか解らないと、答え様が無いです。
CSVファイルの中身を記載してください。

【24875】Re:ファイルの取り込みに付いて
発言    - 05/5/12(木) 12:01 -

引用なし
パスワード
   すいません、中身は次のようになっています。

"00:12:12","aaaaa"," ","テストテストテストテストテストテストテストテストテストテストテスト"," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," ","1","0","0","0","0","0","0"

このようなデータが複数行有ります。

【24876】Re:ファイルの取り込みに付いて
発言  Jaka  - 05/5/12(木) 12:40 -

引用なし
パスワード
   >.QueryTables.Add
よくみたら2000以降からの奴ですね。
私のは97なので詳しくは答えられませんが...。

>.TextFileColumnDataTypes = Array(1, 2, 2, 2)  '←ここの意味が判らない
1行4フィールド(4列分)のデータを
標準、文字列、文字列、文字列
として読み込むと言う事です。
ヘルプに書いてあると思いますが...。

97のOpenText メソッドのヘルプですが

列の番号    変換方法
1    標準
2    文字列
3    MDY 形式の日付
4    DMY 形式の日付
5    YMD 形式の日付
6    MYD 形式の日付
7    DYM 形式の日付
8    YDM 形式の日付
9    その列は削除

4列分のデータしか入らない所にそれ以上のデータを入れようとするもにも無理があると思います。
マクロ記録する事をお勧めしますが....。
そして、提示されたコードと比較してみてください。

[#6642]を覗いてみてください。
他、QueryTables.Add で、検索してみるのも良いかも。

【24877】Re:ファイルの取り込みに付いて
発言    - 05/5/12(木) 12:54 -

引用なし
パスワード
   Jakaさんありがとうございます。
今の環境にヘルプがうまくインストールできていないので・・・すいません。

TextFileColumnDataTypes = Array(1, 2, 2, 2)の部分は直したのですが
ダメでした・・・
教えていただいた記事を参考にデバックしてみます。

【24881】Re:ファイルの取り込みに付いて
お礼    - 05/5/12(木) 14:13 -

引用なし
パスワード
   Jaka さんありがとうございました。

解決することができました。

9901 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free