
No.1ベストアンサー
- 回答日時:
こんにちは。
わたしの独学の範疇で書きます。前提条件は、Excel2000、Access2000、ADOでコネクションを作成します。
参照設定は以下で、*.* はバージョンです。
'Microsoft ActiveX Data Object *.* Library
'Microsoft ADO Ext. *.* for DDL and Security
Sub test()
Dim adoCN As ADODB.Connection
Dim cat As ADOX.Catalog
Dim tbl As ADOX.Table
Dim proc As ADOX.Procedure
Set adoCN = New ADODB.Connection
With adoCN
.CursorLocation = adUseClient
.ConnectionString = "/*接続文字列*/"
.Open
End With
Set cat = New ADOX.Catalog
Set cat.ActiveConnection = adoCN
’アクセスで作成したクエリから探す
For Each tbl In cat.Tables
With tbl
Select Case .Type
Case "TABLE"
Case "LINK"
Case "VIEW"
If .Name = "/*クエリ名*/" Then
'/*発見処理*/
MsgBox "Hit"
Exit For
End If
End Select
End With
Next
’コードで作成したクエリから探す
For Each proc In cat.Procedures
With proc
If .Name = "/*クエリ名*/" Then
'/*発見処理*/
MsgBox "Hit"
Exit For
End If
End With
Next
Set cat = Nothing
adoCN.Close
Set adoCN = Nothing
End Sub
検索が2段構えになってます。SQL文で作成したクエリが、
1段目で拾えなかったので2段目を追加してます。
既存と同名のクエリは作成できないと思います。
上記の発見処理に削除を追加して、新規に同名で作成してみては?
早速の回答ありがとうございました。
ADOは使ったことがないのですが、同名クエリーを
見つけて削除するという流れはDAOでも同じですよね。
早速試してみます。
No.2
- 回答日時:
昔、使っていたやつです
参照設定でDAOが必要です
'-------------------------------------------------------------
'クエリ更新
'
'-------------------------------------------------------------
Public Sub UpdateQuery(strQueryName As String, strSQL As String)
Dim Dbs As DAO.Database
Dim Qdf As DAO.QueryDef
'データベース設定
Set Dbs = CurrentDb
'QueryDefs コレクションを更新する
Dbs.QueryDefs.Refresh
'クエリが存在する場合は、削除する
For Each Qdf In Dbs.QueryDefs
If Qdf.Name = strQueryName Then
Dbs.QueryDefs.Delete Qdf.Name
End If
Next Qdf
'クエリ作成
Set Qdf = Dbs.CreateQueryDef(strQueryName, strSQL)
Set Dbs = Nothing
End Sub
回答ありがとうございます。
DAOのほうが使い慣れているので、
身近に感じました。
肝の部分は、FOR NEXTで検索するところですよね。#1と併せて参考にさせていただきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- Excel(エクセル) 【マクロ】エラーが発生⇒実行時エラー58既に同名のファイルが存在 5 2022/08/31 10:03
- FX・外国為替取引 MQL5にて謎のエラーが発生!だれか対処を教えてください! 1 2023/03/25 15:59
- オープンソース Excelファイルをデバッグしたい 4 2022/09/15 10:16
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- au(KDDI) 特定の画面を見るとスマホが固まります ご覧頂き有難うございます。 特定のページを見るとスマホが固まり 1 2023/08/21 19:29
- Gmail gmail から docomo メールに送信できません 4 2022/06/25 00:41
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 1 2022/06/18 21:20
- PHP phpでこの記述をもっと簡単に書く方法はないでしょうか…? 3 2022/11/16 19:57
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
-
大麻の使用罪がなかった理由や法改正での変更点、他国との違いを弁護士が解説
ドイツで2024年4月に大麻が合法化され、その2ヶ月後にサッカーEURO2024が行われた。その際、ドイツ警察は大会運営における治安維持の一つの方針として「アルコールを飲んでいるグループと、大麻を吸っているグループ...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessの組込み関数について
-
accessである「キーワードの種...
-
Access クエリでできないことは?
-
Access2000で抽出したデータに...
-
ACCESSで追加クエリを連続実行...
-
Accessで進行状況インジケータ...
-
EXCELの外部データ取得ができない
-
アクセスのエラー「クエリには...
-
Access 特定の条件下で、メッ...
-
ACCESSについて、消費時間の合計
-
アクセスで年度で表示
-
ワードの分数表示
-
Excel2007 株価チャートの日付...
-
Accessのクロス集計→テーブル作...
-
PCゲームから音声ファイルを抽...
-
Word索引一覧について
-
異なるファイルのテーブルの移...
-
ACCESSの空白をカウントする
-
ACCESS 上位xの抽出
-
ACCESSテキスト変換
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセスのエラー「クエリには...
-
yes/no型のチェックができない...
-
Access 複数のクエリの結果を...
-
access追加クエリ実行時の重複...
-
EXCELの外部データ取得ができない
-
ACCESS テーブル内の列...
-
Accessでユニオンクエリを作成...
-
ACCESSのフィールドの表示順が...
-
AccessでSQL結果を直接csvに書...
-
アクセスで空白がグループ化さ...
-
Accessで複数(200件程)の置換
-
ログイン画面後のページの表取...
-
Webクエリで取り込みができない...
-
Accessのエラーについてです。
-
Accessで進行状況インジケータ...
-
ACCESSでメッセージにクエリ結...
-
アクセスでクロス集計をレポー...
-
【Access2003 VBA】クエリをエ...
-
Excel「外部データの取り込み」...
-
ACCESSで追加クエリを連続実行...
おすすめ情報