• ベストアンサー

Excel2007のVBAでセルをダブルクリック

で、A1~A4、A6~A9は、○、△、×、(空白) B1~B4、B6~B9は、X、Y、Z、(空白)に変更するには どの様にすればよいのでしょうか。 よろしく御回答願います。

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

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

セルのWクリックはそんなに使い勝手がいいものではないですから、データの入力規則からリスト選択形式にするほうがお勧めです(簡単ですし)。 一応参考までにWクリック版を作ってみました。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)   Dim sPattern As Variant   Dim rRange(1) As Range   Dim i, j, sStr      sPattern = Array(Array("○", "△", "×", ""), Array("X", "Y", "Z", ""))      Set rRange(0) = Application.Union(Range("A1:A4"), Range("A6:A9"))   Set rRange(1) = Application.Union(Range("B1:B4"), Range("B6:B9"))   For i = 0 To 1     If Not Application.Intersect(rRange(i), Target) Is Nothing Then       sStr = sPattern(i)(0)       For j = 0 To 2         If Target.Value = sPattern(i)(j) Then sStr = sPattern(i)(j + 1)       Next j       Target.Value = sStr       Exit Sub     End If   Next i End Sub

mayu1992
質問者

お礼

ご回答ありがとうございました。 私の思う通りに動いてくれたので感激です。 また宜しくお願いします^^ 追記:Cancel = Trueを追記しました。

関連するQ&A