- ベストアンサー
マクロボタンのリセット方法について
- シートにマクロが組まれた状態で、マクロボタンを作成し、数字は守りつつ背景のカラーをリセットしたい場合、どのようなコードを使用すれば良いでしょうか?
- シートのマクロはうまくいくが、マクロボタンがうまく機能しない場合、やり方が間違っている可能性があります。登録した『開発』→コントロールの『挿入』→フォームコントロールのボタン→『ボタン1_Click』は正しい手順ですか?
- 上記のコードを使用した場合、マクロボタンが機能しない場合があります。コードを検証し、選択範囲のセル背景カラーをリセットする方法を試してみてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
また、選択したセルだけではなく D16:CJ48の範囲全ての背景色を消したいのでしたら Sub ボタン1_Click() Application.EnableEvents = False Range("D16:CJ48").Interior.ColorIndex = xlNone Application.EnableEvents = True End Sub
その他の回答 (3)
- kkkkkm
- ベストアンサー率66% (1719/2589)
> 〉〉〉Outのメッセージが出ました。 でしたら D16:CJ48の範囲外を選択している もしくは 2つ以上のセルを選択している ことになりますから 適切な範囲 色を消したい範囲がD16:CJ48ならその範囲 でなければ範囲の指定を変更してその範囲 の中でひとつのセルを選択して実行してください。
補足
D16:CJ48の範囲外を選択している もしくは 2つ以上のセルを選択している ことになりますから 適切な範囲 色を消したい範囲がD16:CJ48ならその範囲 でなければ範囲の指定を変更してその範囲 の中でひとつのセルを選択して実行してください。 >>>>色を消したい範囲をC1:CJ50にしました。
- kkkkkm
- ベストアンサー率66% (1719/2589)
また、ボタンが色を消したいシートと違うシートに設置されている場合は(色を変更したいシートがSheet1とした場合) Sub ボタン1_Click() Sheets("Sheet1").Activate 以下変更なし。 にしてください。
- kkkkkm
- ベストアンサー率66% (1719/2589)
以下のように一時的に変更して Sub ボタン1_Click() If Application.Intersect(Selection, Range("D16:CJ48")) Is Nothing _ Or Selection.Count > 1 Then MsgBox "Out" Exit Sub End If MsgBox "In" Application.EnableEvents = False Selection.Interior.ColorIndex = xlNone Application.EnableEvents = True End Sub Outのメッセージが出たら D16:CJ48の範囲外を選択している もしくは 2つ以上のセルを選択している Inのメッセージが出て背景色が消えない 条件付き書式で色を付けていないか確認してください。 メッセージが両方とも出ない ボタンのマクロの関連付けがうまくできていません。 また、 D16に何かしら背景色を付けてD16を選択したまま Sub Test() Selection.Interior.ColorIndex = xlNone End Sub を実行して背景色が消えるかどうか確認してください。 「1上がったら背景が変わるマクロ」が正常に動作しているという前提での話です。 https://okwave.jp/qa/q9886206.html 同じ質問は締め切ってから質問しないとルール違反になると思います。
補足
Outのメッセージが出たら D16:CJ48の範囲外を選択している もしくは 2つ以上のセルを選択している 〉〉〉Outのメッセージが出ました。 Inのメッセージが出て背景色が消えない 条件付き書式で色を付けていないか確認してください。 メッセージが両方とも出ない ボタンのマクロの関連付けがうまくできていません。 また、 D16に何かしら背景色を付けてD16を選択したまま Sub Test() Selection.Interior.ColorIndex = xlNone End Sub を実行して背景色が消えるかどうか確認してください。 「1上がったら背景が変わるマクロ」が正常に動作しているという前提での話です。 https://okwave.jp/qa/q9886206.html 同じ質問は締め切ってから質問しないとルール違反になると思います。 〉〉〉そうなんですか?教えてくださってありがとうございます。
お礼
kkkkkm 様 本当に本当にありがとうございます。 なんとかできました。 毎回ご丁寧な回答していただきありがとうございます。
補足
Sub ボタン1_Click() Application.EnableEvents = False Range("D16:CJ48").Interior.ColorIndex = xlNone Application.EnableEvents = True End Sub とコピペしましたが、できませんでした。 kkkkkm様、いつもいつも、本当にありがとうございます。