[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『タッチパネルでダブルクリックしてセルの色を変えたい』(困ったさん)
エクセルのセルの指定した範囲をタッチパネルで2回タッチすると色が変わり、
再度2回タッチすると色が元の色に戻る(白)ということがしたいです。
ネットで色々検索しながらやってみているのですが、
指で2回タッチするとセルが選択された状態になり、文字入力できる状態になってしまいます。
マウスで試した場合には、ダブルクリックで色が変わり再度ダブルクリックで元の色に戻っています。
こちらの掲示板で検索したところ、タッチパネルでエクセル表の色を変えている方が
いらっしゃったので、できないことではないと思うのですが
どうしたらいいのかが分かりません。
ご教示よろしくお願いいたします。
●やりたいこと
・特定の範囲のセルの色を指で2回タッチすることで緑色にする
・再度2回タッチすることで元の色(白)に戻す
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Const Hani = "A1:C20"
Const Iro As Variant = 4
Dim Rng As Range
Set Rng = Intersect(Range(Hani), Target)
If Not Rng Is Nothing Then
Cancel = True
If Rng.Interior.ColorIndex = xlNone Then
Rng.Interior.ColorIndex = Iro
Else
If Rng.Interior.ColorIndex = Iro Then Rng.Interior.ColorIndex = xlNone
End If
End If
Set Rng = Nothing
End Sub
< 使用 Excel:Excel2019、使用 OS:Windows10 >
(agt) 2022/01/20(木) 20:33
なにか思い出した気が やっぱり、ダブルタップでBefore_DoubleClickがキックしないという話が
『タッチパネルのエクセル表のセルの色を変える』 [[20201003220953]] (´・ω・`) 2022/01/20(木) 21:09
agtさんありがとうございます。
手元にパソコンが無いので、出勤次第確認いたします。
(困ったさん) 2022/01/21(金) 08:59
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Intersect(Target, Range("B1:B10")) Is Nothing Then Exit Sub With Selection.Interior If .ColorIndex = xlNone Then .ColorIndex = 4 Else .ColorIndex = xlNone End If End With Range("A1").Activate End Sub
Range("A1").Activate はセルをチェンジするためにいわばイベント発生の変わりです。
このA1にタッチパネルのアイコンが居座り続けるけど気にしないで。
B1:B10をタップすることにより切り替えできます。
セルは環境に合わせて変更してください。
(KLY) 2022/01/21(金) 10:56
KLYさんので無事に私が想像していたようなことを実現できました!
タッチパネルで使用するので、ダブルタップよりも1タップのみのほうが使い勝手が良いです。
大変助かりました。ありがとうございました!
(困ったさん) 2022/01/24(月) 09:28
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.