CurrentProject オブジェクト (Access)CurrentProject object (Access)

CurrentProject オブジェクトは、Microsoft Office Access のカレント プロジェクト (.adp) またはデータベース に対するプロジェクトを参照します。The CurrentProject object refers to the project for the current Microsoft Access project (.adp) or Access database.

解説Remarks

CurrentProjectオブジェクトには、現在のデータベース内の特定の**AccessObject** オブジェクトを含む複数のコレクションがあります。The CurrentProject object has several collections that contain specific AccessObject objects within the current database. 各コレクションの名前とそれに含まれるオブジェクトの種類は次のとおりです。The following table lists the name of each collection and the types of objects it contains.


コレクションCollections オブジェクトの種類Object type
AllFormsAllForms すべてのフォームAll forms
AllReportsAllReports すべてのレポートAll reports
AllMacrosAllMacros すべてのマクロAll macros
AllModulesAllModules すべてのモジュールAll modules

注意

[!メモ] 上の表に示したコレクションは、データベースの対応するオブジェクトを開いているまたは閉じているにかかわらずすべて含みます。The collections in the preceding table contain all of the respective objects in the database regardless if they are opened or closed.

たとえば、フォームを示す AccessObject は、 AllForms コレクションのメンバーであり、このコレクションは、カレント データベース内の AccessObject オブジェクトのコレクションです。For example, an AccessObject object representing a form is a member of the AllForms collection, which is a collection of AccessObject objects within the current database. AllForms コレクションでは、各メンバーにゼロから始まるインデックスが付けられています。Within the AllForms collection, individual members of the collection are indexed beginning with zero. AllForms コレクションの各 AccessObject オブジェクトは、そのフォームの名前またはインデックスを使って参照できます。You can refer to an individual AccessObject object in the AllForms collection either by referring to the form by name, or by referring to its index within the collection. AllFormsコレクション内の特定のオブジェクトを参照する場合は、アイテムのコレクションのインデックスが変わる可能性があるので、名前で参照することをお勧めします。If you want to refer to a specific object in the AllForms collection, it's better to refer to it by name because an item's collection index may change. オブジェクト名にスペースが含まれる場合は、名前を角かっこ ([ ]) で囲む必要があります。If the object name includes a space, the name must be surrounded by brackets ([ ]).


構文Syntax Example
AllForms!formnameAllForms!formname AllForms!受注フォームAllForms!OrderForm
AllForms![form name]AllForms![form name] AllForms![受注 フォーム]AllForms![Order Form]
AllForms("formname")AllForms("formname") AllForms("受注フォーム")AllForms("OrderForm")
AllForms(index)AllForms(index) AllForms(0)AllForms(0)

Example

次の使用例は、 CurrentProjectオブジェクトの現在のプロパティ設定を表示し、アプリケーション内の隠しオブジェクトを表示するオプションを設定します。The following example prints some current property settings of the CurrentProject object, and then sets an option to display hidden objects within the application.

Sub ApplicationInformation() 
 ' Print name and type of current object. 
 Debug.Print Application.CurrentProject.FullName 
 Debug.Print Application.CurrentProject.ProjectType 
 ' Set Hidden Objects option under Show on View Tab 
 'of the Options dialog box. 
 Application.SetOption "Show Hidden Objects", True 
End Sub

次の例は、別の Microsoft Office アプリケーションからオートメーションを使用して、 CurrentProjectオブジェクトを使用する方法を示しています。The next example shows how to use the CurrentProject object by using Automation from another Microsoft Office application. 最初に、他のアプリケーションから、モジュールウィンドウの [ツール] メニューの [参照設定] を選択して、Microsoft access への参照を作成します。First, from the other application, create a reference to Microsoft Access by choosing References on the Tools menu in the Module window. [ Microsoft Access オブジェクトライブラリ] の横にあるチェックボックスをオンにしてから、そのアプリケーション内の Visual Basic モジュールに次のコードを入力し、 getaccessdataプロシージャを呼び出します。Select the check box next to Microsoft Access Object Library, and then enter the following code in a Visual Basic module within that application and call the GetAccessData procedure.

この例では、 Applicationクラスの新しいインスタンスを作成し、データベースを開き、 CurrentProjectオブジェクトとAllReportsを使用して指定されたレポートが存在するかどうかを確認するプロシージャに、データベース名とレポート名を渡します。まとめ.The example passes a database name and report name to a procedure that creates a new instance of the Application class, opens the database, and verifies that the specified report exists by using the CurrentProject object and AllReports collection.

Sub GetAccessData() 
' Declare object variable in declarations section of a module 
 Dim appAccess As Access.Application 
 Dim strDB As String 
 Dim strReportName As String 
 
 strDB = "C:\Program Files\Microsoft " _ 
          & "Office\Office11\Samples\Northwind.mdb" 
 strReportName = InputBox("Enter name of report to be verified", _ 
                          "Report Verification") 
 VerifyAccessReport strDB, strReportName 
End Sub 
 
Sub VerifyAccessReport(strDB As String, _ 
                       strReportName As String) 
 ' Return reference to Microsoft Access 
 ' Application object. 
 Set appAccess = New Access.Application 
 ' Open database in Microsoft Access. 
 appAccess.OpenCurrentDatabase strDB 
 ' Verify report exists. 
 On Error Goto ErrorHandler 
 IsObject appAccess.CurrentProject.AllReports(strReportName) 
 MsgBox "Report " & strReportName & _ 
        " verified within " & appAccess.CurrentProject.Name & " database."
 appAccess.CloseCurrentDatabase 
 Set appAccess = Nothing 
Exit Sub 
ErrorHandler: 
 MsgBox "Report " & strReportName & _ 
        " does not exist within " & appAccess.CurrentProject.Name & " database."
 appAccess.CloseCurrentDatabase 
 Set appAccess = Nothing 
End Sub

メソッドMethods

プロパティProperties

関連項目See also

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.