アクセスのマクロ解析ツールはありますか?
- アクセス97で発注・仕入処理をクエリーとマクロを使って行っていますが、処理が複雑化し、管理が難しくなってきました。
- VBAを学ぶ時間もなく、システム屋さんに頼むにも業務知識がなく難しいため、自分で解析できるツールを探しています。
- アクセスの機能にあるデータベース解析ツールは使いづらいため、安価かフリーのツールを教えてほしいです。
- ベストアンサー
アクセスのマクロ解析ツール?
素人ながら、アクセス97で発注・仕入処理を クエリーを使い倒し、マクロを用いて、 どうにかこうにか、システムを作って、運用しています。 ところが、クエリーの数も200個以上になり、 マクロも小さな処理も含めて100は超えています。 こうなってくると、どこでどのマクロを使っていたのか、 すっかり忘れてしまうこともあり、変更の都度、あちこち をたどって行かねばなりません。 VBA(VB)を使えれば良いのですが、今更一から勉強するような時間の余裕すらありませんので、 かといってシステム屋さんに頼もうにも、 業務を全く知らないので、その打ち合わせをする時間で ある程度のもななら自分らで作れるので、 苦労して作っています。 そこで、教えていただきたいのは、マクロまでの処理で 作る場合、あとあとのメンテナンスの時、このマクロは どこで使われているのか、逆引きできたり、どのフォームから実行されているのか、などわかりやすく解析できる ツールのようなものは有りませんでしょうか? ドキュメントツールとなると、たいそうなものでしょうか? アクセスの機能にある、データベースの解析など やたら、紙面が増えて使いづらいことこの上なしなので 何か良いツール(安価かフリーなもの)を教えてください。
- その他(データベース)
- 回答数3
- ありがとう数2
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
http://www.okweb.ne.jp/kotaeru_reply.php3?q=165941 今度は、回答…になるのかな? 1:モジュールを新規作成して、以下の内容をコピー、貼り付けてください。 '****ここから**** Public Function AnalyzeMyQuerys_and_Scripts() As Long Const OutputFileName = "C:\Report.txt" Dim cntForms As dao.Container Dim docForm As Document Dim Ctl As Control Dim FileNo As Integer Dim Value As String Dim Frm As Form Dim prp As Property Dim CtlnamePrinted As Boolean Dim i As Long Dim DocName As String FileNo = FreeFile Open OutputFileName For Output As #FileNo Set cntForms = CurrentDb.Containers("Forms") On Error Resume Next For i = 0 To CurrentDb.Containers("Forms").Documents.Count - 1 DocName = CurrentDb.Containers("Forms").Documents(i).Name DoCmd.Close acForm, DocName, acSaveYes DoCmd.OpenForm DocName, acDesign Set Frm = Forms(DocName) Print #FileNo, "" Print #FileNo, "" Print #FileNo, Frm.Name Print #FileNo, vbTab & "RecordSource: " & Frm.RecordSource For Each prp In Frm.Properties If prp.Name Like "on*" Then If prp.Value <> "" Then Print #FileNo, vbTab & prp.Name & ": " & prp.Value End If End If Next prp For Each Ctl In Frm.Controls CtlnamePrinted = False Value = "" Value = Ctl!RowSourceType If Value = "Table/Query" Then Value = "" Value = Ctl!RowSource If Value <> "" Then If CtlnamePrinted = False Then Print #FileNo, "" Print #FileNo, vbTab & Ctl.Name CtlnamePrinted = True End If Print #FileNo, vbTab & vbTab & "RowSource: " & Value End If End If For Each prp In Ctl.Properties If prp.Name Like "on*" Then If prp.Value <> "" Then If CtlnamePrinted = False Then Print #FileNo, "" Print #FileNo, vbTab & Ctl.Name CtlnamePrinted = True End If Print #FileNo, vbTab & vbTab & prp.Name & ": " & prp.Value End If End If Next prp Next Ctl DoCmd.Close acForm, DocName Next i Close #FileNo End Function '****ここまで**** 2:マクロを新規作成して、1行目に、 アクション:プロシージャの実行 プロシージャ名:AnalyzeMyQuerys_and_Scripts() のようにして、保存してください。 3:開いているフォームを全て閉じてから、2:で作ったマクロを実行。 4:C:ドライブの天辺に、「Report.txt」なるフォームが出来ていると思うので、メモ帳などで開いてください。 「このクエリは何処で使われているの?」ってなことが知りたい場合は、メモ帳の検索機能を使ってください。 フォームの「レコードソース」「イベント」と、コントロールの「値集合ソース」「イベント」に限定して拾ってきているだけですので、それ以外のプロパティにクエリ/マクロが登場している場合には、その項目は取得できません。
その他の回答 (2)
- ARC
- ベストアンサー率46% (643/1383)
誤 C:ドライブの天辺に、「Report.txt」なるフォームが出来ていると思うので、 正 C:ドライブのてっぺんに、「Report.txt」なるファイルが出来ていると思うので、 でしたm(__)m。 ポカミスの専門家(^^;
- ARC
- ベストアンサー率46% (643/1383)
回答ではなく、アドバイスになるのですが… データベースウインドウで、クエリやマクロなどを右クリック→プロパティで、コメントを記述できます。 これを使えば、少しは分かりやすくなるのではないかと思います。 それから、これはいまさら遅いかもしれませんが、テーブル、フォーム、クエリなどの名前を、3桁の数字+名称ってな感じで付けると、整理しやすいです。 100番台は商品関係、300番台は仕入先関係… などと決めておくと、名前で並び替えるだけですっきりと整列しますよ。(Access2000以降では、後からマクロ等の名前を変更しても、フォームの内容とかがそれに合わせて再設定されます。) 例えばどのフォームがどのマクロやクエリを使っているのか、といったことはVBAを使えば一覧出力が可能なのですが…
関連するQ&A
- Access2007のマクロについて
Access2007のマクロでやりたい事は・・・ 削除クエリと追加クエリを作り、このクエリを連続して処理をするために マクロ「クエリを開く」で作りました。 そうすると、そのマクロを実行すると削除クエリの「**件削除してよいですか?」という メッセージが出来ます。「OK」をクリックすると 次の追加クエリが処理されやはり「**件追加してよいですか?」というメッセージが出ます。 やりたい事は、いちいち「OK」をクリックするのが面倒なので、マクロを実行すると 「**件削除してよいですか?」というメッセージが出ないようにするにはどうしたら良いでしょうか? 分かりにくい質問で申し訳ございませんが、宜しくご教授の程お願い致します。
- ベストアンサー
- その他MS Office製品
- アクセス97のドキュメント作成ツールについて
アクセス97で簡単に構造の解析のできるツールを探しています。 たとえば、フォームのフィールドはどこのテーブルやクエリーから引っ張ってきているのかや、クエリーがどこのテーブルをもってきて、どういう条件で作られているのかなど、簡単に解析したいのです。 参考になる方法やサイトがありましたら教えてください。
- 締切済み
- その他(データベース)
- Accessを解析したい
初心者です(WindowsXP Access2000) Accessで手間隙かけて作り上げたFORMがトラぶってしまいました。結局最終目的であるフォームから順にたどってトラブルの原因はつかめたのですが、今後のためにも、どのような手順で作ったかを記録しようと思っています。 そこで、どなたかAccessを解析するフリーのツールをご存知の方いらっしゃいませんか。ただし、SQLで出てきても困ります。例えばこのクエリはどのテーブルとどのクエリの組み合わせでどのような条件で作っているかなど、なにせ初心者ですので、、、 よろしくお願いします。
- 締切済み
- その他(データベース)
- ACCESSの解析ソフト
ACCESSの解析ソフトを探しています。 テーブル名、リンク先、 クエリの種類、繋がっているテーブル マクロの中身 等々…を、EXCELに出力できるような ソフトはありませんか? Vectorで探したのですが見つかりませんでした。
- 締切済み
- オフィス系ソフト
- アクセス解析について
gooでブログをやっているのですが、既存のスキンを使用しているため、タグを組み込む方式の外部のアクセス解析を取り付けられません。 フリーのスキンをイチから作りこんでいくほど知識と時間もないのですが、URLのみでリファラや検索条件等が分かるアクセス解析ツールはないのでしょうか。ちなみにカードを持っていないためgooの有料解析ツールも申し込めません・・。 ご回答いただければ幸いです。
- ベストアンサー
- ブログ
- ACCESSのマクロ?
ほとんど初心者なので、難しいことを教えていただいてもわからないのですが、Excelで他のシートのセルを引用するのに、 =VLOOKUP(A1,[ABC]Sheet1!$A$1:$D$19,4,FALSE) こんな感じのマクロを書きます。 これと同じことをaccessでしたいのですが、VBAで書かないと無理なのでしょうか? accessは、テーブルをたくさん使ってクエリで処理するようですが、excelで慣れてしまっているので、理解できなくて困っています。よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Accessのmdb分析(解析)方法またはツールを教えて下さい
Access2000のmdb解析について方法またはツールを教えて下さい。 会社で引継ぎをしたAccessのmdbなのですが、複数のmdbを利用し レポート(帳票印刷)や情報抽出を行っている様になっており、 リンクがどの様になっているのか、また、そのリンク先テーブルから 何を参照し、クエリ結果が注抽出されているのか、パッと見て解らない状態です。 今後、OracleDBへ変更する可能性もある為、引き継いだmdbの情報を まとめておきたいと考えています。 どのmdbとmdbがリンクされており、その結果何が生成されているのか というのがExcelやテキストにエクスポートできるツール等が ありましたら、教えて下さい。 Access初心者なので、うまく表現できませんがどなたか 教えて下さい。お願いします。
- ベストアンサー
- その他(データベース)
- ACCESSに変わるレポーティングツール探しています
基幹システム(Oracle10g)のデータをもとに、ACCESSを使用していろいろな帳票や集計を行っているのですが、同じようなことを他の市販ツールを用いてできないかと考えており、いい製品があれば教えていただけないでしょうか。 ■現在の使用法(ACCESS) ・基幹データ(Oracle)をACCESSからODBCリンク接続して、リアルな情報を元に帳票(ACCESSレポート)出力やデータのクエリ集計出力(csv出力)を行っている。 ・帳票出力やデータ集計出力に必要な情報について、基幹データに存在しないものもあるので、それらについてはACCESSのフォームから直接データを入力しており、それらのデータをクエリにてマージして出力している。 ■市販ツールの要件 ・現在ACCESSで行っていることが実現可能 ・大量の基幹データでも高速処理が可能(現在処理性能が低くて困ってます) ・エンドユーザ(ACCESSは問題なく使用できるレベルの人)が、ある程度の説明を実施すれば帳票や集計クエリなどの開発を行うことが可能 ・帳票やデータ集計クエリのサーバーでの一元管理も可能
- 締切済み
- その他(業務ソフトウェア)
- ACCESS97mdbを分析したいのですがこんな事出来ますか?
こんにちは。 ACCESS97(初心者に近い)なのですが、 1個の.mdbの各テーブル、クエリー、レポート、マクロにたくさんのオブジェクトがあります。 テーブル、クエリーは30個近くあります。 これをどのテーブルやクエリーがどこに関連しているのか、分析したいのですが方法がわかりません。 「ツール」-「解析」-「データベース解析」やってみましたが・・・ 初心者なもので、図と矢印などで表現してほしいんです。 そんなわがままなこと無理でしょうか? やはり地道に一つ一つ見ていかなければならないでしょうか・・ また、そういうフリーソフトなどあれば、教えてください。 よろしくおねがいします。m(__)m
- ベストアンサー
- オフィス系ソフト
- ACCESS(アクセス) マクロを使った複数条件検索
accessを使った履歴DBを作っているのですが、本格的にVBをするつもりは毛頭なく、極力マクロを駆使して、頑張ってきました。 現在、クエリビルダーでSQL文をそのまま書いて、こちらをフィルタ名に指定して、複数条件検索マクロ(フォームを開く)を組んでいるのですが、この方法だと条件に合致するものがない場合でも、フォームを開くというマクロを実行してしまいます(当たり前なのですが)。検索結果が0件の場合にはエラーメッセージを出すように本当はしたいです。 VBに切り替えれば間違いなく出来るのは想像できるのですが、VBは全くやる気がないので、できることならマクロで何とかしたいのですが・・・。やっぱり無理でしょうか。
- 締切済み
- オフィス系ソフト