- 日時: 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を充分大きくすることで解決できるかもしれません。
|