
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("A2,N2")) Is Nothing Then
Dim nome As String, codice As String, nip As String
Dim rng1 As Range, c As Range, x As Range, Col As Integer
nome = [A2].Value
codice = [N2].Value
For Each c In Sheets(1).Range("B1:DQ1")
If c.Value = nome Then
Set rng1 = Sheets(1).Range(c.Offset(1, 0), c.Offset(1, 12))
For Each x In rng1
If x.Value = codice Then
Col = x.Column
If x.Offset(1, -1) = 0 Then
[J7].Value = x.Offset(1, x.Offset(1).End(xlToLeft).Column - Col).Value
Else
[J7].Value = x.Offset(1, -1).Value
End If
If x.Offset(2, -1) = 0 Then
[J8].Value = x.Offset(2, x.Offset(2).End(xlToLeft).Column - Col).Value
Else
[J8].Value = x.Offset(2, -1)
End If
If x.Offset(3, -1) = 0 Then
[J9].Value = x.Offset(3, x.Offset(3).End(xlToLeft).Column - Col).Value
Else
[J9].Value = x.Offset(3, -1)
End If
If x.Offset(4, -1) = 0 Then
[J10].Value = x.Offset(4, x.Offset(4).End(xlToLeft).Column - Col).Value
Else
[J10].Value = x.Offset(4, -1)
End If
If x.Offset(5, -1) = 0 Then
[J11].Value = x.Offset(5, x.Offset(5).End(xlToLeft).Column - Col).Value
Else
[J11].Value = x.Offset(5, -1)
End If
If x.Offset(6, -1) = 0 Then
[J12].Value = x.Offset(6, x.Offset(6).End(xlToLeft).Column - Col).Value
Else
[J12].Value = x.Offset(6, -1)
End If
If x.Offset(7, -1) = 0 Then
[J13].Value = x.Offset(7, x.Offset(7).End(xlToLeft).Column - Col).Value
Else
[J13].Value = x.Offset(7, -1)
End If
Exit For
End If
Next x
End If
Next c
End If
End Sub
|
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("A2,N2")) Is Nothing Then
Dim nome As String, codice As String, nip As String
Dim rng1 As Range, c As Range, x As Range, Col As Integer, colSx As Integer, cicloA As Long
nome = [A2].Value
codice = [N2].Value
Range("J7:K12").ClearContents 'Ora cancello i valori precedenti
For Each c In Sheets(1).Range("B1:DQ1")
If c.Value = nome Then
Set rng1 = Sheets(1).Range(c.Offset(1, 0), c.Offset(1, 12))
For Each x In rng1
If x.Value = codice Then
Col = x.Column
colSx = (((Col - 2) 12) * 12) + 2
For cicloA = 3 To 8
For ciclo = Col - 1 To colSx Step -1
If Not Sheets(1).Cells(cicloA, ciclo) = 0 Then
Cells(cicloA + 4, "J") = Sheets(1).Cells(cicloA, ciclo)
Exit For
End If
Next
Next
Exit For
End If
Next x
End If
Next c
End If
End Sub |
