• ベストアンサー

Access関数を、どのクエリーで使用しているか調べる方法

Accessのモジュールで定義した関数を、どこで使用しているか調べたいのですが、 クエリが多いので1つずつ探していくとかなり時間がかかり、また、見落としも心配です。 他の関数内から呼ばれているものは、検索で調べられるのですが、 クエリで使用されているものは検索できませんでした。 何か良い方法はないものでしょうか? よろしくお願い致します。

noname#13477
noname#13477

質問者が選んだベストアンサー

  • ベストアンサー
  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.1

解析用のソフトを使ってもいいでしょうけど、 > モジュールで定義した関数を、どこで使用しているか この程度ならば、以下のようなモジュールを実行すればいいと思います。 Sub クエリ検索()      Const strTarget As String = "XXX"        Dim db     As DAO.Database   Dim rs     As DAO.Recordset   Dim qrdef   As DAO.QueryDef   Dim strSql   As String      strSql = "SELECT [NAME] FROM MSysObjects WHERE [TYPE]=5"   Set db = CurrentDb   Set rs = db.OpenRecordset(strSql)      Do Until rs.EOF     Set qrdef = db.QueryDefs(rs("NAME"))     If InStr(1, qrdef.SQL, strTarget, vbTextCompare) > 0 Then       Debug.Print qrdef.SQL     End If     Set qrdef = Nothing     rs.MoveNext   Loop      Set rs = Nothing   Set db = Nothing    End Sub

noname#13477
質問者

お礼

ご回答ありがとうございます。 できました。やはり、漏れがありました。助かりました。 どうもありがとうございます。感謝します。

関連するQ&A

  • アクセスでReplace関数を使用しているクエリがエクセルに読み込めない

    ヴァージョンは2003です。 アクセスのクエリをエクセルへ落としたいので エクセル→データ→外部データの取り込み→新しいデータベースクエリでアクセスのファイルを選択し、 読み込みたいクエリを選択して「>」を押すと 『式に未定義関数 'Replace' があります。 』 と言うメッセージがでてしまい回避できません。 たしかにそのクエリではReplace関数を使用しています。 しかしアクセスでは問題なく表示できます。 アクセスに戻り、指定のクエリからReplace関数をなくせば エクセルに読み込むことができます。 以上 回避方法をご存知の方、 ヒントだけでもいいのでご教授よろしくお願い致します。

  • 自作関数を含んだクエリをエクセルからADODBで呼び出すとエラーになる

    MS-ACESS2000を使用しています。 自作関数を含んだアクセスのクエリをエクセルから、ADODBを使って呼び出そうと すると・・・ ===================================== 実行時エラー:'-2147217900(8004e14)' 式に未定義関数'koteityo'があります ===================================== というエラーが発生します。 自作関数名:koteityo モジュール名:Mdl です。 自作関数を含んだアクセスのクエリは、アクセス上ではちゃんと動いています。エクセルに呼び出そうとすると、上記のエラーが出てしまいます。 是非とも、教えてください。

  • AccessのクエリーでDate関数の使用について

    こんにちは、今非常に困っています。 Access2000でクエリー式にDate関数を使用していますが、実行時に「クエリー式にDate関数は使用できません」というエラーが発生します。 デバッグにてイミディエイトウィンドウで確認したところ日付は取れているようなのですが。 どういった事象でこのエラーがでるのかわかりません。 どなたか解決策を教えてください。 Date関数を使える環境と使えない環境などがあるのでしたらそれも教えてください。 OS Windows2000 AP Access2000(Office2000ではありません)

  • 外部データソース選択時「未定義の関数~があります」

    友人からの代理質問です。 WindowsXP SP2、Excel2003、Access2003を使用しています。 Accessでモジュール「test」を作成し、クエリー「Q」にその式を使用しています。 Excelのピボットテーブルで、外部データソースに「Q」を指定してフィールドを選択しようとしたところ「Microsoft Query:式に未定義の関数'test'があります」と表示され、操作を続行できません。 モジュール「test」の定義をExcelでする必要があるのではないかと思っていますが、ネットで調べても対処方法がわかりませんでした。 モジュール等、あまり詳しくないため、上記で説明不足の点は補足させていただきます。よろしくお願いいたします。

  • Accessで式に未定義関数Formatがあります

    Access2003で使用していたクエリを、Access2013で開くと、「式に未定義関数Formatがあります」の表示がされて使用することができません。このクエリでは確かにFormat関数は使用しております。対処方法がお分かりになればご教授いただけると助かります。なお、当方VBAとSQLは使えませんのでクエリデザインでの対処方法をご教授いただけると助かります。 よろしくお願いいたします。

  • ACCESS モジュールで自作した関数が、未定義関数・・・?

    モジュールで自作した関数を使用する際、普段は問題なく使用できるのですが、何かの拍子に「未定義関数です」という内容のエラーが発生します。 こうなると、この関数は使えなくなります。 この関数のコードを変更しなくても、このエラーは発生します。 ACCESSそのものを再起動すると問題なく使用できます。 なぜこのようなことがおきるのでしょうか? 解決方法はありますか? よろしくおねがいします。

  • ACCESSのクエリの関数について

    ACCESSのクエリの関数について 列の標準偏差はテーブルの集計で出来ますが、レコードの標準偏差を求めたいと思います。 クエリの関数で、StDev(expr)のexprにレコードの[テーブルの名前]![フィールド名前]を 入れる時には","で続けるのか? この方法では式が作成出来ません。

  • アクセス2000VBA ADO パラメータクエリについて

    アクセス2000VBA ADO パラメータクエリについて フォーム1で得たデータをモジュールで定義した[hensu](String)に代入して、クエリ1(選択クエリ)の抽出条件として[hensu]を使用して、それによって得たデータをフォーム1で使用したいです。 フォーム1で[hensu]をパラメータクエリ?として定義するような文章(プログラム)が必要なだと思いますが、その例文(プログラム)を教えてください。 シロウト用に分かりやすくお願いします。

  • accessクエリの条件パラメータの件

    こんにちわ。 access2000でクエリを作成していますが, [抽出条件]に「モジュール」内で定義したグローバル変数を 渡したいのですが,どのようにすれば良いでしょうか? 教えてください。お願いします。

  • SQL Server 2000 クエリ応答時間の削減方法について

    SQL server 2000を使用しています。クエリアナライザから、あるユーザ定義関数を使用すると、処理時間が不必要にかかってしまっているので、なんとか処理速度を向上させたいのですが、解決方法が見出せません。ユーザ定義関数のロジックは最適なもので間違いは無い事を大前提として、処理速度を向上させたい場合の調査方法、および解決方法等をご教示頂ければ幸いです。どんな些細な事でも結構ですので、ご回答お願い致します。

専門家に質問してみよう