コントロール コレクションを使用してページ上のコントロールを移動する
次の例では、ループを使用して、Microsoft Forms 2.0 Controls コレクションから個々のコントロールにFor Each...Next
アクセスします。 CommandButton1 を押すと、コントロールの Move メソッドによって、ほかのコントロールがフォームの左端の列に配置されます。
この例を利用するには、次のコード例をフォームのスクリプト エディターにコピーします。 コードを実行するには、アイテムの Open イベントをアクティブにするためにフォームを開く必要があります。 フォームに CommandButton1 という名前の CommandButton と他のいくつかのコントロールが含まれていることを確認します。
Dim CtrlHeight
Dim CtrlTop
Dim CtrlGap
Dim CommandButton1
Sub Item_Open()
Set CommandButton1 = Item.GetInspector.ModifiedFormPages("P.2").CommandButton1
CtrlHeight = 20
CtrlGap = 5
CommandButton1.Caption = "Click to move controls"
CommandButton1.AutoSize = True
CommandButton1.Left = 120
CommandButton1.Top = CtrlTop
End Sub
Sub CommandButton1_Click()
Dim MyControl
Set AllControls = Item.GetInspector.ModifiedFormPages("P.2").Controls
CtrlTop = 5
For i = 0 to AllControls.Count - 1
Set MyControl = AllControls(i)
If MyControl.Name = "CommandButton1" Then
'Don't move or resize this control.
Else
'Move method using unnamed arguments (left, top, width, height)
MyControl.Move 5, CtrlTop, ,CtrlHeight
'Calculate top coordinate for next control
CtrlTop = CtrlTop + CtrlHeight + CtrlGap
End If
Next
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示