Buongiorno a tutti,
ho tentato di creare una macro , ma rilascia errore.
Ho un file excel, composto da due fogli: "File Origine" e "DATABASE"
Le colonne dei due fogli sono identiche per numero ed intestazione. ( in totale 6 colonne)
Nella colonna E ho un numero identificativo cliente. Nella colonna D ho dei numeri che indicano i giorni trascorsi.
La macro dovrebbe confrontare il valore della colonna E di ciascuna riga del foglio "File Origine" con il valore della colonna E di ciascuna riga del foglio "DATABASE".
Quando il valore è uguale,ovvero, quando trova lo stesso cliente, la macro dovrebbe copiare il valore numerico della cella D corrispondente del cliente dal "File Origine" alla cella D dello stesso cliente nel file "DATABASE".
Non funziona e mi rilascia errore sul Range dell'If Nonesiste.
Grazie a tutti per l'eventuale aiuto.
[Sub Aggiorna()
Dim Sh1 As Worksheet, Sh2 As Worksheet, Sh3 As Worksheet, Sh4 As Worksheet
Dim Area1 As Range, Area2 As Range, Cella As Range, Valore As String, Nonesiste
Dim R3 As Long, R4 As Long, Riga As Long
Set Sh1 = Worksheets("File Origine")
Set Sh2 = Worksheets("DATABASE")
Set Area1 = Sh1.[E3:E5000]
Set Area2 = Sh2.[E3:E5000]
R3 = 3
R4 = 3
Riga = 3
Sh1.Select
For Each Cella In Area1
Valore = Cella
Set Nonesiste = Area2.Find(Valore, LookIn:=xlValues, LookAt:=xlWhole)
If Nonesiste Is Nothing Then
Sh1.Range (Sh1.Cells(Riga, 5))
Cella.Interior.ColorIndex = 3
Else
Sh1.Range(Sh1.Cells(Riga, 4)).Copy Destination:=Sh4.Cells(Riga, 1)
End If
Next
MsgBox "Elaborazione conclusa"
Set Sh1 = Nothing
Set Sh2 = Nothing
Set Area1 = Nothing
Set Area2 = Nothing
End Sub]