- ベストアンサー
オプションボタンで選択したセルにキー入力出来ない他
- UserForm1を配置し、OptionButtonを2つ配置しています。OptionButton1をクリックした時は、a1セルに「東京」と表示し、カーソルをb1セルに移動させて数字をキー入力します。OptionButton2をクリックした時は、a1セルに「大阪」と表示し、カーソルをb1セルに移動させて数字をキー入力します。しかし、OptionButtonをクリックしてもb1セルに数字が表示されず、マウスでクリックしてからキー入力すると表示されます。また、ファイルを保存終了後、再度開いた時にはオプションボタンの丸印が2つとも○になっていますが、前回終了時に選んだオプションボタンに●をつけた状態で表示したいです。
- オプションボタンでセルにキー入力ができない問題があります。OptionButtonをクリックしてもb1セルに数字が表示されないため、マウスでクリックしてからキー入力する必要があります。また、ファイルを保存終了後、再度開いた時にはオプションボタンの丸印が2つとも○になっていますが、前回終了時に選んだオプションボタンに●をつけた状態で表示したいです。
- UserForm1に配置したOptionButtonをクリックした時に、b1セルにキー入力ができません。OptionButton1をクリックした場合はa1セルに「東京」と表示し、b1セルにカーソルを移動させて数字をキー入力します。OptionButton2をクリックした場合はa1セルに「大阪」と表示し、b1セルにカーソルを移動させて数字をキー入力します。しかし、OptionButtonをクリックしてもb1セルに数字が表示されないため、マウスでクリックしてからキー入力する必要があります。また、ファイルを保存終了後、再度開いた時にはオプションボタンの丸印が2つとも○になっていますが、前回終了時に選んだオプションボタンに●をつけた状態で表示したいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
1)既に回答が付いてますが..... AppActivate Application.Caption の替わりに Application.Visible = True でも可能です。 2)こちらはNo.1さんと考え方が違っていて、シートの"a1"セルの状態でセットしています。 "東京"でも"大阪"でもない時は○の状態で起動します。 Private Sub UserForm_Initialize() Debug.Print Range("a1").Value If Range("a1").Value = "東京" Then OptionButton1.Value = True End If If Range("a1").Value = "大阪" Then OptionButton2.Value = True End If End Sub
その他の回答 (1)
- watabe007
- ベストアンサー率62% (476/760)
>1、OptionButtonをクリック後、数字キーを押してもb1セルに表示されません、 UserFormがアクティブになっているのでExcelをアクティブにしてやる必要があります。 Private Sub OptionButton1_Click() Range("a1").Value = "東京" Range("b1").Activate AppActivate Application.Caption End Sub Private Sub OptionButton2_Click() Range("a1").Value = "大阪" Range("b1").Activate AppActivate Application.Caption End Sub >前回終了時に選んだオプションボタンに●がついた状態で表示させたい オプションボタンの状態を、どこかに記録保存してやる必要があります とりあえずTerminateイベントを使ってセルH1に記録してみました。 Private Sub UserForm_Terminate() If Me.OptionButton1 = True Then Range("H1").Value = True Else Range("H1").Value = False End If End Sub >●がついた状態で表示させたい UserForm起動にInitializeイベントでセルH1の状態を読み オブションボタンに>●を付けます Private Sub UserForm_Initialize() If Range("H1").Value = True Then Me.OptionButton1 = True Else Me.OptionButton2 = True End If End Sub
お礼
watabe007様 お教えのコードで実行しまして問題が解決しました 説明も解りやすかったです 有難うございました
お礼
uruz様 回答有難うございました 順調にうごいています 感謝です