いくつかのテキストボックスと続行ボタンを使用してUserform2を作成できますか? Userform 2は、別のuserfomr1から選択された値(チェックボックス)に基づいて作成されます。VBA:USerform - 一部のチェックボックスに基づいてユーザーフォームを作成する方法
例1 - ユーザは、すべてのフィールドを選択
Userform2はUserfomr1から選択された値に基づいて作成されます。
いくつかのテキストボックスと続行ボタンを使用してUserform2を作成できますか? Userform 2は、別のuserfomr1から選択された値(チェックボックス)に基づいて作成されます。VBA:USerform - 一部のチェックボックスに基づいてユーザーフォームを作成する方法
例1 - ユーザは、すべてのフィールドを選択
Userform2はUserfomr1から選択された値に基づいて作成されます。
ミミックこれらのユーザーフォームの構造は、実施例を持っている: あなたは、マクロに新しく追加されたコントロールの適切な名称を監視することを述べてきたようにUserform1 UserForm2
:のTextBox1、TextBox2を... CheckBox1、CheckBox2 ...、CommandButton1_Click .... ect
以下のコードはフォームで使用できます。
新しいモジュールを作成し、このコードを貼り付けます。
Sub formAction()
' set them to invisible first, it can be done in control properties also.
UserForm2.TextBox1.Visible = False
UserForm2.TextBox2.Visible = False
UserForm2.TextBox3.Visible = False
UserForm2.TextBox4.Visible = False
UserForm2.TextBox4.Left = 10 'example of controls movement
UserForm2.TextBox4.Top = 10 'example of controls movement
UserForm1.Show 'fire first userform
End Sub
は、UserForm1のコードにこれを挿入します。
Private Sub CommandButton1_Click()
If UserForm1.CheckBox1.Value = True Then UserForm2.TextBox1.Visible = True
If UserForm1.CheckBox2.Value = True Then UserForm2.TextBox2.Visible = True
If UserForm1.CheckBox3.Value = True Then UserForm2.TextBox3.Visible = True
If UserForm1.CheckBox4.Value = True Then UserForm2.TextBox4.Visible = True
UserForm2.Show
End Sub
ます。また、コントロールの寸法を操作し、どのように応じて、適切なサイズを決定するために自分自身をユーザーフォームすることができます多くのオプションがユーザーによって選択されます。
コードの方が効率的であるようにするために、この例のためにこれらのコントロールを反復しませんでした。
ユーザーの観点からは、完全にロードされた画面2が表示されていて、興味のないフィールドを空白のままにするオプションがあります。私にはとにかく最初に別のフォームを通過します。しかし、それは私の個人的な意見であり、誰もがいつも私が奇妙であると言います。そうすれば、他の人々は異なる見方をするかもしれません。 – YowE3K
あなたの答えは「はい、可能です」です。しかし、それは本当に問題ではありませんでした。 –