Bom dia, preciso de um código para comparar duas colunas (A,C) se o código for igual pega o valor da coluna D e atualizar na coluna B(na linha do codigo)
alguem pode me ajudar?
Fiz um macro no chatgpt, mas está dando erro:
Sub AtualizarValores()
Dim planilha1 As Object
Dim planilha2 As Object
Dim ultimaLinha1 As Long
Dim ultimaLinha2 As Long
Dim codigoColuna1 As Variant
Dim codigoColuna2 As Variant
Dim valorColuna2 As Variant
Dim celulaCodigoColuna1 As Variant
Dim celulaCodigoColuna2 As Variant
Dim celulaValorColuna2 As Variant
Dim i As Long
Dim j As Long
' Obtenha as referências das planilhas
planilha1 = ThisComponent.getSheets().getByName("produtos1")
planilha2 = ThisComponent.getSheets().getByName("produtos2")
' Obtenha os dados das colunas A e B de cada planilha
codigoColuna1 = planilha1.getCellRangeByName("A2:A" & planilha1.Rows.Count).getDataArray()
codigoColuna2 = planilha2.getCellRangeByName("A2:A" & planilha2.Rows.Count).getDataArray()
valorColuna2 = planilha2.getCellRangeByName("B2:B" & planilha2.Rows.Count).getDataArray()
' Determine o número de linhas com base no tamanho do array retornado
ultimaLinha1 = UBound(codigoColuna1) + 1
ultimaLinha2 = UBound(codigoColuna2) + 1
' Percorra cada célula na coluna A da planilha 1 (código da primeira planilha)
For i = 0 To ultimaLinha1 - 1
celulaCodigoColuna1 = codigoColuna1(i, 0)
' Percorra cada célula na coluna A da planilha 2 (código da segunda planilha)
For j = 0 To ultimaLinha2 - 1
celulaCodigoColuna2 = codigoColuna2(j, 0)
' Verifique se os códigos são iguais
If celulaCodigoColuna1 = celulaCodigoColuna2 Then
celulaValorColuna2 = valorColuna2(j, 0)
' Atualize o valor na coluna B da planilha 1 com o valor correspondente da planilha 2
planilha1.getCellByPosition(1, i + 2).Value = celulaValorColuna2
Exit For ' Saia do loop interno quando uma correspondência for encontrada
End If
Next j
Next i
MsgBox "Valores atualizados com sucesso!", 64, "Informação"
End Sub
nesta linha:
If celulaCodigoColuna1 = celulaCodigoColuna2 Then
“Variavel não definida”
neste codigo fiz o teste com duas tabelhas, produtos1 e produtos2 comparando a coluna A, atulizando B