![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.5
- 回答日時:
s_husky です。
回答を外しましたので訂正!
入力は手動。
キャンセルはコマンドボタンのようです。
ならば、多少、変更が必要です。
Private Sub OptionButton1_Click()
UpdateOption 1
End Sub
Private Sub OptionButton2_Click()
UpdateOption 2
End Sub
|
|
Private Sub OptionButton7_Click()
UpdateOption 7
End Sub
Private Sub cmdCancel_Click()
UpdateOption 0
End Sub
Public Sub UpdateOption(ByVal intIndex As Integer)
On Error Resume Next
Static OldIndex(1) As Integer
Dim OptionsValues(7) As Boolean
Dim isCancel As Boolean
isCancel = intIndex = 0
intIndex = IIf(isCancel, OldIndex(1), intIndex)
If isCancel Then
OptionsValues(OldIndex(1)) = False
OptionsValues(intIndex) = True
Me.OptionButton1.Value = OptionsValues(1)
Me.OptionButton2.Value = OptionsValues(2)
Me.OptionButton3.Value = OptionsValues(3)
Me.OptionButton4.Value = OptionsValues(4)
Me.OptionButton5.Value = OptionsValues(5)
Me.OptionButton6.Value = OptionsValues(6)
Me.OptionButton7.Value = OptionsValues(7)
End If
OldIndex(1) = OldIndex(0)
OldIndex(0) = intIndex
End Sub
No.4
- 回答日時:
1、CommandButton1_Click() ----> 1 ON
2、CommandButton2_Click() ----> 3 ON
3、CommandButton3_Click() ----> 1 ON
キャンセルの場合
UpdateOption 0
というルールです。
Private Sub CommandButton1_Click()
MsgBox "1=True"
UpdateOption 1
End Sub
Private Sub CommandButton2_Click()
MsgBox "3=True"
UpdateOption 3
End Sub
Private Sub CommandButton3_Click()
MsgBox "キャンセル"
UpdateOption 0
End Sub
Public Sub UpdateOption(ByVal intIndex As Integer)
On Error Resume Next
Static OldIndex(1) As Integer
Dim OptionsValues(7) As Boolean
intIndex = IIf(intIndex = 0, OldIndex(1), intIndex)
OptionsValues(OldIndex(1)) = False
OptionsValues(intIndex) = True
Me.OptionButton1.Value = OptionsValues(1)
Me.OptionButton2.Value = OptionsValues(2)
Me.OptionButton3.Value = OptionsValues(3)
Me.OptionButton4.Value = OptionsValues(4)
Me.OptionButton5.Value = OptionsValues(5)
Me.OptionButton6.Value = OptionsValues(6)
Me.OptionButton7.Value = OptionsValues(7)
OldIndex(1) = OldIndex(0)
OldIndex(0) = intIndex
Workbooks("sheet1").Refresh
End Sub
No.3
- 回答日時:
>VBAはオプションボタンから作動させたいのです
これらのオプションボタンを押す時には条件は整っているのですよね?
単純に下記のような物をオプションボタン全てに登録したのではダメですか?
C1の値が1になると実質オプションの切り替えが利かなくなります。
Sub OpChk()
If Range("C1").Value = 1 Then
Range("A1").Value = Range("B1").Value
Else
Range("B1").Value = Range("A1").Value
End If
End Sub
さっそくありがとうございます。
> これらのオプションボタンを押す時には条件は整っているのですよね?
どのオプションボタンを押したかで、条件が整うのです。仮にC1セルの値が「TRUE」の時に3番目のオプションボタンを押されたら「キャンセル」させるといった具合です。
No.2
- 回答日時:
こんにちは。
こうすればどうでしょうか?
OptionButton のOnAction にマクロを置いて、On/Off を確保させ、他のマクロで、戻させます。
なお、なるべく、ActiveSheetではなく、明示的なシート名のほうがよいです。
Private Ops() As Long
Sub OPValueStock()
'オプションボタンの値を確保
Dim i As Integer
With ActiveSheet
ReDim Ops(1 To .OptionButtons.Count)
For i = 1 To .OptionButtons.Count
Ops(i) = .OptionButtons(i).Value
Next
End With
End Sub
Sub OPRecover()
'オプションボタンの値を戻す
Dim j As Long
Dim i As Integer
On Error GoTo EndLine
j = UBound(Ops())
With ActiveSheet
For i = 1 To .OptionButtons.Count
If Ops(i) = 1 Then
.OptionButtons(i).Value = 1
End If
Next
End With
EndLine:
End Sub
さっそくありがとうございます。
ためしに新しいシートにフォームのオプションボタンを7個配置し、それぞれにSub OPValueStockを設定しました。
オプションボタンを押したのち、Sub OPRecoverを走らせましたが、オプションボタンは元には戻りませんでした。やりかたがまずいのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) [貼り付けオプション]とは? 3 2022/04/17 08:15
- Excel(エクセル) エクセルの編集オプション セル移動 2 2022/04/02 09:19
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) Vba 電卓 一文字消すボタン 3 2022/05/04 13:40
- 教えて!goo アンドロイド用の教えて!gooアプリの戻るボタンを押すと、勝手に自動で教えて!gooアプリが終了して 2 2022/09/24 07:47
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
- Excel(エクセル) Powershell エクセル検索 完全一致の方法 1 2022/06/05 20:19
- Windows 10 WINDOWS11 で WINDOWS UPDATE 詳細オプション その他の製品オンにできない 1 2022/06/10 09:34
- Windows 10 Windows10でセーフモードが出来ません。 2 2022/04/22 23:37
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
エクセルVBA オプションボタンのチェックを外したい
Excel(エクセル)
-
エクセルVBAでOptionButtonのオンオフ取得
Excel(エクセル)
-
エクセルVBAでオプションボタンを無効にする方法
Excel(エクセル)
-
-
4
Excel ラジオボタンのリセットを作りたい
Excel(エクセル)
-
5
日報の休日ボタン(トグルボタン)を一度に解除するマクロは?
Excel(エクセル)
-
6
ラジオボタンのオンとオフ
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
データチェックを行うエクセル...
-
再質問です。マクロの修正箇所...
-
エクセルの数式バーのフォント...
-
エクセルで「ページレイアウト...
-
2列に入っているデータを1列...
-
【ExcelVBA】名前を付けて保存→...
-
エクセルでファイルの最終更新...
-
Excel VBAで全ての矢印を赤色に...
-
数字入力後他の文字等が表示さ...
-
【ExcelVBA】ダブルクォーテー...
-
エクセル関数を使って
-
エクセルで 自動的に◯や数字を...
-
Excelについて
-
【Excel】別シートから条件に合...
-
【マクロ】VLOOKUPにて参照元に...
-
エクセルの問題です。絶対値の...
-
エクセルのセルに同じ大きさの...
-
エクセルをエクセレントに究める
-
Excel 小さくなったスクロール...
-
エクセルのツールバーから数値...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Google Mapで、都市高速は使わ...
-
Excelでオプションが開けない
-
ふりかけ定食。あったら頼みた...
-
Access2007で複数のチェックボ...
-
日経225オプションの過去データ...
-
オプション取引がゼロサムゲー...
-
「Excelのオプション」の「ユー...
-
画像やオートシェイプの単位が...
-
nkf -mについて
-
AcsessでオプショングループをN...
-
[Google カレンダー] 定期的な...
-
エクセルVBA/フォームのオプシ...
-
リブレオフィスの予測表示の停...
-
テザリングしたいけど、いつも...
-
ガンマロングの意味
-
outlookの予定表を最初に開きたい
-
MSアウトルックのアラーム音を...
-
au光の料金下げる事って出来ま...
-
楽天モバイル UN LIMTVI(アン...
-
BTOオプションって何ですか?
おすすめ情報