• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:オプションボタンで選択したセルにキー入力出来ない他)

オプションボタンで選択したセルにキー入力出来ない他

このQ&Aのポイント
  • 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つとも○になっていますが、前回終了時に選んだオプションボタンに●をつけた状態で表示したいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • uruz
  • ベストアンサー率49% (417/840)
回答No.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

yuritoh
質問者

お礼

uruz様 回答有難うございました 順調にうごいています 感謝です

その他の回答 (1)

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.1

>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

yuritoh
質問者

お礼

watabe007様 お教えのコードで実行しまして問題が解決しました 説明も解りやすかったです 有難うございました