VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/12/10(Wed) 19:01
投稿者太郎
URL
タイトルEXCEL形式のファイルをADOで読み込む

こんばんわ、VBでプログラムを開発中ですが、行き詰まってしまったので教えて頂けないでしょうか?
EXCEL形式のファイルをADOで読み込むのですが、FIELDの値がNullになる事があるので困っています。

こちらのサンプルプログラムを参考にEXCELファイルからの読込部分を作成しました。
以下のような感じです。

    strProvider = "Provider=MSDASQL;Extended Properties="""
    strDriver = "Driver={Microsoft Excel Driver (*.xls)};DBQ="
    strConnection = strProvider & strDriver & DirPathDB & "\" & FileNameDB & """"
    adoCN.ConnectionString = strConnection
    adoCN.Open     'コネクションをオープン
    
    strSql = "SELECT * FROM [SHEET$]"
    adoRS.Open strSql, adoCN, adOpenForwardOnly, adLockOptimistic, adCmdText

ここでadoRS.Fields(1)の値がきちんと読めたりNullになったりします。

EXCELファイルの内容は以下のような感じです。属性はすべて文字列としています。

機能名        項目数
保存        8
表示位置    標識    日本語名    項目名        カラム幅
1        ORADB    日付        DDATE        1800
2        ORADB    キー        KEY        1800
3        ORADB    名称1        NM1        2500
        :
8        ORADB    …

ファイル形式をEXCELにしたのは同様の形式の定義が複数有り、それをシート単位で管理したかったの
と実行環境では不用意に変更されないようするためです。(実行環境にはEXCELはインストールしない)

上記の項目数から読み込むレコード数を決定するのですが、この値が読めたり読めなかったりします。
一旦数値属性にして保存してから文字列属性に変えると読める時もありますが不定です。
何かヒントでも良いので助けて頂けないでしょうか?

ちなみにADOを使うのは今回が初めてで、サンプルプログラムを元に試行錯誤で作成しました。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -