VBのADOでExcelファイルのシート名を取得するには?

解決


マウス  2003-12-18 19:34:21  No: 81000  IP: [192.*.*.*]

VBのADOを使って、EXCELファイルのシート名を取得するには
どうしたらいいのでしょうか?
どなたかご存知でしたら、ご教授御願い致します。

編集 削除
魔界の仮面弁士  2003-12-18 19:58:55  No: 81001  IP: [192.*.*.*]

Microsoft.Jet.OLEDB.4.0プロバイダや、JetのIISAMを
内部的に呼び出しているODBCドライバ等で接続しているなら、
ワークシート名だけを抜き出す方法はありません。

一応、OpenSchemaメソッドで「テーブル名」を取得すれば、
シート名を列挙できるのですが、この方法の場合、シート名だけでなく、
「名前を付けられたセル範囲」なども一緒に抽出されてしまいます。

編集 削除
マウス  2003-12-18 20:35:15  No: 81002  IP: [192.*.*.*]

ご教授ありがとうございます。
とりあえず「名前を付けられたセル範囲」を使うことはないと思うので、
OpenSchemaメソッドを使って頑張ってみようと思います。

編集 削除
花ちゃん  2003-12-18 21:06:30  No: 81003  IP: [192.*.*.*]

>とりあえず「名前を付けられたセル範囲」を使うことはないと思うので、

それ以外の物も含まれます。

以前、私が試した時には、ワークシート名には自動的にシート名の後ろに $ が
付くので、下記のようにすればシート名だけ取得できました。
因みに範囲名等には $ は使用できません。

If Right$(SheetNeme, 1) = "$" Or Right$(SheetNeme, 2) = "$'" Then
  'シート名だけ取得

編集 削除
マウス  2003-12-19 19:43:23  No: 81004  IP: [192.*.*.*]

アドバイスありがとうございます。
これで、シート名だけを取り出せそうです。

ご教授ありがとうございました。

編集 削除