- 締切済み
値を変更後にセルがアクティブ状態に
セルをダブルクリックして値を変えるマクロを作ったのですが 値を変更後にセルがアクティブ状態になってしまいます。 エンターを押したり他のセルをクリックすれば通常通りになるのですが、 VBAでも通常通りに戻すにはどうすればいいでしょうか? Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim mystr As String mystr = Target.Value If mystr = "Yes" Then Target.Value = "No" ElseIf mystr = "No" Then Target.Value = "Yes" End If End Sub を実行すると、 セルをクリックしてF2を押した時のような状態になってしまいます。 コードの最後に Target.Cells.Select を入れてみましたが、変わりませんでした。 スクショを撮ってみたのですが、カーソル?棒?が映りませんでした。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- keithin
- ベストアンサー率66% (5278/7941)
cancel = true を書いておきます。 しかし実際にはWクリックしたセルが「どうだったら所定の入力を終え」、どうならそのまま編集状態に移行するのか、よく考えてプログラムします。 作成例: Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim mystr As String mystr = Target.Value If mystr = "Yes" Then Target.Value = "No" cancel = true ElseIf mystr = "No" Then Target.Value = "Yes" cancel = true End If End Sub