ho adattato queste macro worksheet change per fare in modo di controllare il valore di tre differenti opzioni:
nelle colonne da C a E ho su ogni riga la possibilità di scegliere una posizione che assume valore 1, e le altre due diventano (o restano 0).
Il comando selection change funziona sempre con il clic.
Per azzerare tutto ho un comando before doubleclic.
Il comportamento curioso è questo: se definisco come target lo stesso range per le due funzioni, facendo doppio clic non parte quella routine ma entra in gioco la selection change. Se invece come target del doppio clic aggiungo anche la colonna F tutto funziona come deve.
Vorrei capire come mai succede questo.
- Codice: Seleziona tutto
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
CheckArea = "C3:F100"
If Not Intersect(Target(1, 1), Range(CheckArea)) Is Nothing Then
RigAttiva = Target(1, 1).Row
Range(Cells(RigAttiva, 3), Cells(RigAttiva, 5)) = 0
Cells(RigAttiva, 6).Select
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
CheckArea = "C3:E100"
If Not Application.Intersect(Target, Range(CheckArea)) Is Nothing Then
If (Selection.Rows.Count + Selection.Columns.Count) > 2 Then Exit Sub
ColAttiva = ActiveCell.Column
RigAttiva = ActiveCell.Row
Range(Cells(RigAttiva, 3), Cells(RigAttiva, 5)) = 0
Cells(RigAttiva, ColAttiva) = 1
Cells(RigAttiva, 6).Select
End If
End Sub