単一のオブジェクトに対して一連の文を実行します。
構文
With object
statements
End With
引数:
Object: 必須。オブジェクトの名前。
Statements: 必須。オブジェクトに対して実行される1つ以上の文。
備考
With文を使用すると、オブジェクトの名前を再修飾せずに、指定したオブジェクトに対して一連の文を実行できます。たとえば、1つのオブジェクトで複数の異なるプロパティを変更するには、プロパティ割当て文をWith制御構造内に配置し、プロパティ割当てごとにオブジェクトを参照するのではなく、オブジェクトを1回参照します。次の例は、With文を使用して、同じオブジェクトの複数のプロパティに値を割り当てる方法を示しています。
例1:
With MyLabel .Height = 2000 .Width = 2000 .Caption = "This is MyLabel" End With
プロパティの操作はWith機能の重要な側面ですが、唯一の用途ではありません。Withブロック内では任意の法的コードを使用できます。
Note:
Withブロックが入力されると、オブジェクトは変更できません。その結果、単一のWith文を使用して複数の異なるオブジェクトに影響を与えることはできません。
Withブロック内に別のWithブロックを配置して、With文をネストできます。ただし、外側のWithブロックのメンバーは内側のWithブロック内でマスクされるため、内側のWithブロック内の完全修飾オブジェクト参照を外側のWithブロック内のオブジェクトの任意のメンバーに提供する必要があります。
重要: Withブロックにジャンプしたり、Withブロックから出ないでください。Withブロック内の文が実行されても、With文またはEnd With文がいずれかが実行されない場合は、エラーまたは予期しない動作が発生する可能性があります。
推奨事項: 必要がないかぎり、withブロックを使用しないでください。常に明示的にオブジェクトを使用することをお薦めします。