参照と Imports ステートメント (Visual Basic)References and the Imports Statement (Visual Basic)

プロジェクトで外部オブジェクトを使用できるようにするには、 [プロジェクト] メニューの [参照の追加] コマンドを選択します。You can make external objects available to your project by choosing the Add Reference command on the Project menu. Visual Basic の参照ではアセンブリを参照できます。アセンブリはタイプ ライブラリに似ていますが、より多くの情報が含まれます。References in Visual Basic can point to assemblies, which are like type libraries but contain more information.

Imports ステートメントThe Imports Statement

アセンブリには、1 つ以上の名前空間が含まれます。Assemblies include one or more namespaces. アセンブリへの参照を追加するときに、モジュール内でそのアセンブリの名前空間の可視性を制御する Imports ステートメントをモジュールに追加することもできます。When you add a reference to an assembly, you can also add an Imports statement to a module that controls the visibility of that assembly's namespaces within the module. Imports ステートメントは、一意の参照を指定するために必要な名前空間の部分だけを使用できるようにする、スコープ コンテキストを提供します。The Imports statement provides a scoping context that lets you use only the portion of the namespace necessary to supply a unique reference.

Imports ステートメントの構文は次のとおりです。The Imports statement has the following syntax:

Imports [Aliasname =] Namespace

Aliasname は、インポートされた名前空間を参照するためにコード内で使用できる短い名前を参照します。Aliasname refers to a short name you can use within code to refer to an imported namespace. Namespace は、プロジェクト参照、プロジェクト内の定義、または前の Imports ステートメントを通じて使用できる名前空間です。Namespace is a namespace available through either a project reference, through a definition within the project, or through a previous Imports statement.

モジュールには、Imports ステートメントをいくつでも含めることができます。A module may contain any number of Imports statements. これらは、Option ステートメント (存在する場合) の後の、他のコードの前に配置する必要があります。They must appear after any Option statements, if present, but before any other code.

注意

Imports ステートメントまたは Declare ステートメントとプロジェクト参照を混同しないでください。Do not confuse project references with the Imports statement or the Declare statement. プロジェクト参照は、アセンブリ内のオブジェクトなどの外部オブジェクトを、Visual Basic プロジェクトで使用できるようにします。Project references make external objects, such as objects in assemblies, available to Visual Basic projects. Imports ステートメントは、プロジェクト参照へのアクセスを簡素化するために使用されますが、これらのオブジェクトへのアクセスは提供しません。The Imports statement is used to simplify access to project references, but does not provide access to these objects. Declare ステートメントは、ダイナミックリンク ライブラリ (DLL) 内の外部プロシージャへの参照を宣言するために使用されます。The Declare statement is used to declare a reference to an external procedure in a dynamic-link library (DLL).

Imports ステートメントでの別名の使用Using Aliases with the Imports Statement

Imports ステートメントにより、参照の完全修飾名を明示的に入力する必要がなくなるため、クラスのメソッドに簡単にアクセスできるようになります。The Imports statement makes it easier to access methods of classes by eliminating the need to explicitly type the fully qualified names of references. 別名を使用すると、名前空間の一部分にのみ、わかりやすい名前を割り当てることができます。Aliases let you assign a friendlier name to just one part of a namespace. たとえば、単一のテキストが複数行に表示されるキャリッジ リターン/ライン フィード シーケンスは、Microsoft.VisualBasic 名前空間の ControlChars モジュールの一部です。For example, the carriage return/line feed sequence that causes a single piece of text to be displayed on multiple lines is part of the ControlChars module in the Microsoft.VisualBasic namespace. 別名なしで、この定数をプログラムで使用するには、次のコードを入力する必要があります。To use this constant in a program without an alias, you would need to type the following code:

MsgBox("Some text" & Microsoft.VisualBasic.ControlChars.CrLf &
       "Some more text")

Imports ステートメントは、常にモジュール内の Option ステートメントの直後の最初の行である必要があります。Imports statements must always be the first lines immediately following any Option statements in a module. 次のコード フラグメントは、別名をインポートして Microsoft.VisualBasic.ControlChars モジュールに割り当てる方法を示しています。The following code fragment shows how to import and assign an alias to the Microsoft.VisualBasic.ControlChars module:

Imports CtrlChrs = Microsoft.VisualBasic.ControlChars

この名前空間への今後の参照は、かなり短くなる可能性があります。Future references to this namespace can be considerably shorter:

MsgBox("Some text" & CtrlChrs.CrLf & "Some more text")

Imports ステートメントに別名が含まれていない場合、インポートされた名前空間内で定義されている要素を、修飾せずにモジュールで使用できます。If an Imports statement does not include an alias name, elements defined within the imported namespace can be used in the module without qualification. 別名が指定されている場合は、その名前空間に含まれる名前の修飾子として使用する必要があります。If the alias name is specified, it must be used as a qualifier for names contained within that namespace.

関連項目See also