• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル、マクロ(ダブルクリック)の処理について)

エクセル、マクロ(ダブルクリック)の処理について

このQ&Aのポイント
  • VisualBasicで、初心者向けのマクロ処理の方法を教えてください。
  • セルをダブルクリックすると、セルの内容が切り替わるようにしたいです。
  • ダブルクリックで「特別」、2回目のダブルクリックで空白になるようにしたいです。

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 Select Case 構文で、カウントを取ろうとしたけれども、それが出来ないから、という質問のようですが、もう一度、組み立てをしてみてください。 ダブルクリックを対象の行(以下のコードでは、省略します) 1回目のダブルクリックで"通常" 2回目のダブルクリックで"特別"、 3回目で空白にもどる もし、これが、"通常"と入った後に、空白にして、また、次にダブルクリックの時に、"特別" と入るようなら、これは、なかなか難しいです。配列なんていう方法もあるかもしれませんが、それは、Excelの考え方ではありませんからね。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)    With Target     If IsEmpty(.Value) Then       .Value = "通常"     ElseIf .Value Like "通常*" Then       .Value = "特別"     Else       .ClearContents     End If   End With   Cancel = True End Sub なお、私は、.Value ="通常" とは、なんとなくですが、していません。

perikan2
質問者

お礼

希望通りにでき、本当に助かりました。これからも勉強します。どうもありがとうございました!

perikan2
質問者

補足

ありがとうございます。 空白 → ”通常” → ”特別” → 空白 ...となってくれるのが理想ですので、きっとお教えくださった方法ですね。月曜に会社で早速やってみます。ご親切に教えて下さりありがとうございました。

その他の回答 (1)

  • higekuman
  • ベストアンサー率19% (195/979)
回答No.1

> Case 1 > If IsEmpty(Target) Then > Target.Value = "通常" > Else > Target.Value = Empty > End If > Cancel = True このコードはご自分で組まれたんですよね? これを組めるのに、なぜご質問されていることが解らないのかが不思議です。 ご自分で組まれたコードをちゃんとご理解なさっていますか?

perikan2
質問者

補足

すみません、しっかりは理解してません。教えてもらいながら、本を見ながらやってみたものです。教えてくれた方が中々捕まらず、困ってしまいご質問させて頂きました。ありがとうございました。

関連するQ&A