- ベストアンサー
エクセル マクロ コマンドボタンが斜線になって使えなくなる
新しいウインドウを開いてウインドウを並べて コマンドボタンでマクロを実行すると ボタンを押してないほうのシートのコマンドボタンが斜線になります。 そしてマクロが使えなくなります。 なぜでしょうか? エクセルのバグですか? 私だけでしょうか? よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 お話は理解したのですが、どうしたらよいのか、難しいですね。 ウィンドウの優先権というのがありますから、仮に斜線が出ていない状態でも、そのコマンドボタンは有効ではないと思うのです。 ためしに、このようなことを考えてみました。 オートフィルタが出ていないシートの場合は、ボタンにあるシートのAutoFilter が設定され、 オートフィルタがある場合は、オートフィルタのあるシートは、AutoFilter が、解除されるという方法です。 少し、試してみてください。 シートのボタンは、このような共通の内容です。 Private Sub CommandButton1_Click() If Me.AutoFilterMode = False Then Me.Range("A1").AutoFilter 'AutoFilter が、A1 からある場合 Else Call ReleaseAutoFilter End If ActiveWindow.SelectedSheets(1).Range("A1").Select End Sub '-------------------------------------------- '標準モジュール (AutoFilter の解除) Sub ReleaseAutoFilter() Dim sh As Worksheet For Each sh In ActiveWorkbook.Worksheets If sh.AutoFilterMode Then sh.AutoFilterMode = False End If Next sh End Sub
その他の回答 (1)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんばんは。 回答としては、分からないですね。 いろんな原因が考えられますが、それを特定することは出来ません。 まず、「コマンドボタン」というのは何か、というところから始まってしまいます。 「ウィンドウ」を開いて並べてということも分かりません。 片方がアクティブのシートのウィンドウで、もう片方がアクティブないシートで、仮に、コントロールツールのボタンが、両方のシートにあって、ウィンドウのシートがアクティブでなければ、ボタンも同時にアクティブではないでしょうね。 第二にマクロ自身の問題もあります。 その可能性を想像して、全部出していくのは、回答側には無理があると思います。
補足
説明不足ですいません。 >片方がアクティブのシートのウィンドウで、もう片方がアクティブないシートで、仮に、コントロールツールのボタンが、両方のシートにあって まさしくこの状態です。 >ウィンドウのシートがアクティブでなければ、ボタンも同時にアクティブではないでしょうね このときにアクティブではないコマンドボタンが斜線になってしまいます。 マクロ自身は簡単なもので、 「オートフィルタを解除する」 とかそんなものです。 大変参考になりました。ご回答ありがとうございます。 もう一度回答いただければ幸いです。
お礼
ちょっと難しいですね。。。 大変参考になりました。ご回答ありがとうございます。