前提・実現したいこと
①ユーザーフォーム読み込み時、その他の隣にあるテキストボックスは無効の状態で、BackColorは&HC0C0C0である
②その他のオプションボタンが押下されたら、隣のテキストボックスが有効になりなおかつBackColorが&HFFFFFFになる。
③オプションボタンの女が選択されたら、セルA1に「女」と転記される。その他ボタンが選択された場合は、その他ボタンの隣のテキストボックスに記載された内容がA1に転記されるようにしたい
※一般的なアンケートで、「あなたはこのサイトをどこで知りましたか?」という問いがあったときに「その他」欄に自由記述できるような、そんな感じのものを作りたいのです…
↑やりたいことのイメージ ↓実装中の入力フォーム
発生している問題・エラーメッセージ
①UserForm_Initializeでその他のテキストボックス(txtOther)のBackColorがグレー(&HC0C0C0)になっていてほしいのにならない。あとそのテキストボックスがEnabled = Falseにならない
②実現したいことが実現されない……
④登録ボタン押下後、オプションボタンもテキストボックスも入力できない状態になってしまう
※上記につきまして、このエラーの大半が私の単なるスペルミス(UserForm_Initializeのスペルを間違えていた)起因と判明いたしましたので、こちら一度は削除いたします。大変申し訳ございませんでした。
その他ボタンをクリックした際、セルA1には隣のテキストボックスに入力された内容を転記したいと考えているのですが、実装したコードでは転記されません。
該当のソースコード
VBA
1Option Explicit 2 3Private op As String 4Private lastrow As Long 5 6Private Sub UserForm_Initiialize() 7 txtOther.Enabled = False 8 txtOther.BackColor = &HC0C0C0 9End Sub 10 11Private Sub cmdRegist_click() 12 lastrow = Cells(Rows.Count, 1).End(xlUp).Row + 1 13 Worksheets("Sheet1").Cells(lastrow, 1) = op 14 15 opF.Enabled = False 16 opOther.Enabled = False 17 txtOther.Enabled = False 18 txtOther.BackColor = &HC0C0C0 19 20End Sub 21 22Private Sub opF_click() 23 op = "女" 24End Sub 25 26Private Sub opOther_click() 27 txtOther.Enabled = True 28 txtOther.BackColor = &HFFFFFF 29 op = txtOther 30End Sub 31
考えたこと
VBA
1Private Sub opOther_click() 2 txtOther.Enabled = True 3 txtOther.BackColor = &HFFFFFF 4 op = txtOther 5End Sub
op = txtOtherでない、というところはわかっているのですが、逆にどうしたらよいのかというところで考えが詰まっています。
補足情報(FW/ツールのバージョンなど)
Excel2010を使用しています。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。