
エクセルからアクセスの全てのクエリ名を取得することはできますか?
アクセスからなら
http://www.accessclub.jp/vbakaisetu/58.html
これでできたのですが、
エクセルからアクセスの全てのクエリ名をシートに書き出したいのですが
どうすればいいでしょうか?
エクセルからアクセスのクエリ名を取得するプロシージャーを実行して
変数に格納し、エクセルに戻すしかないのでしょうか?
No.2ベストアンサー
- 回答日時:
Excelのコード表の参照設定で、
Microsoft DAO xx Object Library
にチェックを入れて置いてください。
なお、xxは3.6のような数字です。
Sub test()
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
Dim myQdfName As Variant
Dim i As Long
Dim j As Long
Set db = OpenDatabase("C:\Temp\sample.mdb")
'クエリ名の取り出し
ReDim myQdfName(i)
For Each qdf In db.QueryDefs
If Left(qdf.Name, 1) <> "~" Then
ReDim Preserve myQdfName(i)
myQdfName(i) = qdf.Name
i = i + 1
End If
Next qdf
'シートへの書き込み
For j = LBound(myQdfName) To UBound(myQdfName)
With Worksheets("Sheet1")
.Cells(j + 1, 1).Value = myQdfName(j)
End With
Next j
Set qdf = Nothing
db.Close: Set db = Nothing
End Sub
クエリの数は不明なので、一旦配列に取り込み、
それをシートに書き込む仕様にしています。
なお、No1さんのおっしゃるMsQueryからは、肝心なMSysObjectsや
MSysQueriesの列は参照できないようです。Accessのバージョンに
よってことなるかもしれませんが。
できました~
~sq_cフォーム1~sq_cコンボ0
とか言う変なオブジェクトまで取得されちゃうからifするんですね。
このコードはエクセルからでもアクセスからでも実行可能のようですね。
有難うございます。
No.1
- 回答日時:
記憶があいまいなのと環境が無いので試せませんので非常に無責任な状態ですが。
隠しオブジェクトのMSysなんとかというテーブルに、定義されてるオブジェクト名が一覧になってませんでしたっけ?
どこかの列の特定の値でオブジェクトの種類が"クエリ"と判断できたような気がします。
MSQueryで接続できるならそれで取得するとか。
違ってたらごめんなさい。
システムオブジェクトのMSysQueriesを見てみましたが
クエリ名らしきものはありませんでした。
むしろ何のデータが入ってるのか理解できませんでした笑
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセスのエラー「クエリには...
-
access追加クエリ実行時の重複...
-
Accessクエリでの並べ替えについて
-
DoCmd.RunSQL "DROP Query
-
yes/no型のチェックができない...
-
年度ごとの最大値
-
アクセスのクエリー作成
-
ファイルメーカーのCase関数で
-
ACCESSでの文字数カウント
-
SQL文で パラメータが少なすぎ...
-
差込印刷での全角表示について...
-
Access Nz関数の合計値の小数点...
-
海外ドラマ『プリズン・ブレイ...
-
ACCESSのクエリで抽出条件「ま...
-
Access クエリ上で表示させた割...
-
ニンニク料理食べた翌日の屁の...
-
ACCESSのアクションクエリについて
-
SQLの練習問題に関する質問です...
-
日付型のフィールドに空白を入...
-
フィールドの更新がない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセスのエラー「クエリには...
-
access追加クエリ実行時の重複...
-
Access 複数のクエリの結果を...
-
ACCESSのフィールドの表示順が...
-
yes/no型のチェックができない...
-
ログイン画面後のページの表取...
-
アクセスで空白がグループ化さ...
-
EXCELの外部データ取得ができない
-
ACCESSで追加クエリを連続実行...
-
Accessのエラーについてです。
-
AccessでSQL結果を直接csvに書...
-
Access複数のクエリをExcelの1...
-
Accessで複数(200件程)の置換
-
アクセス ADO レコードの件数...
-
Accessで進行状況インジケータ...
-
アクセスのフォーム単票形式の...
-
エクセルからアクセスの更新ク...
-
Accessでユニオンクエリを作成...
-
Access2000で抽出したデータに...
-
アクセスのクエリ抽出の仕方に...
おすすめ情報