tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
DAOまたはADOでExcelファイルを開いた時にデータ...(VB6.0 応用編) ( No.7 )  [親スレッドへ]
日時: 2007/08/20 10:43
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[エクセル][][]                                                      *
* キーワード:DAO,ADO,HDR,IMEX,SCHEMA.INI,同一カラム内、異なるデータ型             *
***********************************************************************************

元質問:DAOまたはADOでEXCEL開いたとき - こた  2003/09/10-10:31 No.5818

 DAOまたはADOでEXCEL開いたとき、同一列内に異なるデータタイプがあって少数派がNull(またはEmpty)になってしまう。の解決ってありますか?
 元EXCELファイルに手を加えないという前提ではDAOまたはADOでは無理なようです。(Microsoft技術情報参照)
できればなんでもかんでも文字型で読みたいのですが(そうすれば手はあるんですが・・・・)
それってDAOまたはADOでできるのでしょうか?
それがだめなら他の方法でEXCEL開きたいのですが、CreateObject以外で手はありますでしょうか?
今、EXCELをCSVにしてから読み込もうかどうしようか迷い中です。

-----------------------------------------------------------------------------------
Re: DAOまたはADOでEXCEL開いたとき - 花ちゃん  2003/09/10-10:51 No.5819
(DAOまたはADOでExcelファイルを開いた時にデータの表示が欠落する場合の対処法)
-----------------------------------------------------------------------------------
Excelファイルの場合、SCHEMA.INI ファイルが使用できなかったと思いますので
IMEX=1 を入れてやれば或る程度改善できるかと思います。
オプション機能の IMEX=1; を追加 "Excel 8.0;HDR=YES;IMEX=1;" すれば8行目までのデータ
が同一カラム(列)内に混在している場合 テキスト型として扱います。

従って項目行に文字列が使用されている場合は有効ですが、8行目までに違ったデータ型が
混在していない場合は有効になりません。

その場合は、別途レジストリ(下記)

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\3.5\Engines\Excel]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel]

のTypeGuessRowsを充分大きくすることで解決できるかもしれません。




 [スレッド一覧へ] [親スレッドへ]