0
前の質問で、範囲からダブルクリックしたときにセル(A1)を別のセル(B1)細胞(例えば、A1〜A4)。私はダブルクリックされたセル(A1)を強調表示する方法も発見しました。私がA2をダブルクリックすると、値はB1の値に置き換えられます。 A1とA2の両方が強調表示される代わりに強調表示されます。最初のダブルクリックからハイライトを削除するには、2回目のダブルクリックが必要です。私が使用している VBはVbaをダブルクリックしてハイライトし、別のセルをダブルクリックして最初のセルのハイライトを削除します。
Private Sub Worksheet_BeforeDoubleClick(ByVal target As Range, Cancel As Boolean)
If Not Intersect(target, Range("A1:A4")) Is Nothing Then
Cancel = True
target.Copy
Range("B1").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End If
With target.Interior
If Not .ColorIndex = xlNone Then
.ColorIndex = xlNone
ElseIf Not Intersect(target, Range("A1:A4")) Is Nothing Then
.ColorIndex = 15
ElseIf Not .ColorIndex = 15 Then
.ColorIndex = xlNone
End If
End With
Cancel = True
End Sub
あるすべてのヘルプはあなたが唯一の1つのセルは強調表示されるようにしたいとあなたの細胞の書式は他を持っていないと仮定すると、
ありがとう@RGA 2番目のソリューションは完璧です! A1:A4の範囲を設定するには、A5:A10に別のデータセットがあるので、2番目の範囲のセルをダブルクリックすると、A1:A4のハイライト表示されたセルは削除されます。私は2つの強調表示されたセル、各範囲から1で終わりたい。 – cah1991
@ cah1991次に、2つの "PreviousCell"変数(例えば、PreviousCell1とPreviousCell2)を作成し、次に 'target'の行と列をチェックしてダブルクリックされた範囲を確認します。 PreviousCell1を使用してA1:A4とPreviousCell2を参照してA5:A10を参照し、それに対応する領域のリセットのみを行います(If文を使用して) – RGA
ありがとう@RGAこれは終わりですが、最初の範囲はisnハイライト表示は、2番目の範囲のみです。私はこれから何が欠けていますか? 公開PreviousCell2として範囲 ない.ColorIndex = xlNoneが続い .ColorIndex = xlNone のElseIf(対象、範囲(「A5を交差していない場合はPreviousCell2がtarget.Interior で次にPreviousCell2.Interior.ColorIndex = xlNone 何もしない場合: A10" は)) で エンドがcah1991 @ = trueを設定しPreviousCell2 =ターゲット End Subの – cah1991