VBでExcelファイルを読み込むとき・・・


imuya  2002-06-17 20:30:07  No: 75752

DAO,ADOこれらの手法でExcelファイルを読み込みたくて
なんとかデータ取得までいくことは出来たのですが

<Excelファイルの先頭行(セル:A1,B1,C1,・・・)を
  タイトル(項目のヘッダ)としてそれを指定してあげることで
  VBからデータの取得ができました>

例①
      | A   | B   | C   | D   |
    --+-----+-----+-----+-----+--
    1 | No. | cd1 | cd2 | cd3 |  ← タイトル
    2 | 1   | a   |  e  | i   |  ← データ
    3 | 2   | b   |  f  | j   |  ← データ
    4 | 3   | c   |  g  | k   |  ← データ
    5 | 4   | d   |  h  | l   |  ← データ

例えば、上記の例①では“cd1”を指定してあげることで
“a,b,c,d”のデータを順次取得することが出来ました。

質問はここからなんですが
もし上記で述べているタイトルが1行目だけでなく
2行目(または3行目)にあった場合は
どうしたらいいのでしょうか?(下図②参照)

⇒ No2を指定して“a,b,c,d”のデータを順次取得したい!

例②
      | A   | B   | C   | D   |
    --+-----+-----+-----+-----+--
    1 |     |     |     |     |  ← 空白行
    2 | No1 | No2 | cd1 | cd2 |  ← タイトル
    3 | 1   | a   |  e  | i   |  ← データ
    4 | 2   | b   |  f  | j   |  ← データ
    5 | 3   | c   |  g  | k   |  ← データ
    6 | 4   | d   |  h  | l   |  ← データ

ADO,DAOとも両方でやってみてるのですが
上手く取得できずに困っています。

よろしくお願いします。

※図が下手で申し訳ありません。
  例①・②はExcelシートと見てください。


Tomyankuns  2002-06-29 08:51:15  No: 75753

CellsのRowを変えることになると思いますが、
①のコードをのせられたほうがいいかと。


Say  2002-07-02 08:09:27  No: 75754

DAO/ADOは1行目をフィールド名とみなします。
フィールド行が2行目以降にあるのなら、
事前にExcel Object Libraryを使って
不要行を削除してください。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加