0

私のチームには、フォーム クラスで VB を使用してストアド プロシージャを呼び出す Access データベース ファイルが多数あります。

これらの accdb ファイル内の Access Class Objects でストアド プロシージャ名を検索できるようにしたいのですが、Microsoft Visual Basic for Applications はすべてのクラス定義を一度に検索することをサポートしていないようです。

accdb ファイル内のすべてのアクセス クラス オブジェクトで文字列を検索する方法はありますか?

4

2 に答える 2

1

The VBA solution didn't print the CodeBehindForm section for me, but I did get success using the Interop libraries.

using Microsoft.Office.Interop.Access;
using System;

namespace AccessExporter
{
    class Program
    {
        static void Main(string[] args)
        {
            ApplicationClass app = new ApplicationClass();

            String fileName = @"C:\AccessFile.accdb";
            app.Visible = false;
            app.OpenCurrentDatabase(fileName);

            foreach (AccessObject obj in app.CurrentProject.AllForms)
            {
                Console.WriteLine(obj.Name);
                app.SaveAsText(AcObjectType.acForm, obj.Name, String.Format(@"C:\{0}.txt", obj.Name));
            }

            app.CloseCurrentDatabase();
        }
    }
}
于 2013-06-11T20:20:36.257 に答える