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