ERROR: Application-defined or object-defined error
Tengo una tabla origen, con más de 4000 entradas, y 3 columnas.
Tengo que buscar las coincidencias, con el campo de la primera columna, que hay entre la tabla origen y una segunda tabla con 3000 entradas, con 3 columnas, pero sólo la primera tiene contenido.
Si encuentra una coincidencia en alguna celda de la primera columna, tiene que rellarme la segunda y tercer columna de la segunda tabla, en la fila correspondiente a la del campo de la primera celda coincidente.
Para que nos entendamos es un listado de 4000 mil NIF's viejos, y las 2 columnas son contraseñas.
Ahora sólo hay 3000 NIF's, los tengo listados, pero quiero rellenarlo con su correspondientes contraseñas.
Código:
Sub Prueba()
Const TOTAL = 4330
Dim tablaOR, tablaDE, nif, pass1, pass2 As String
Dim i As Integer
'Ini variables
tablaOR = "hoja1"
tablaDE = "hoja2"
nif = "A"
pass1 = "B"
pass2 = "C"
'empieza for
For i = 1 To TOTAL
If ThisWorkbook.Worksheets(tablaOR).Application.Cells(i).Columns(nif).Value = ThisWorkbook.Worksheets(tablaDE).Application.Cells(i).Columns(nif).Value Then
ThisWorkbook.Worksheets(tablaDE).Application.Cells(i).Columns(nif).Activate
ThisWorkbook.Worksheets(tablaDE).Application.Cells(i).Columns(pass1).Value = ThisWorkbook.Worksheets(tablaOR).Application.Cells(i).Columns(pass1).Value
ThisWorkbook.Worksheets(tablaDE).Application.Cells(i).Columns(pass2).Value = ThisWorkbook.Worksheets(tablaOR).Application.Cells(i).Columns(pass2).Value
End If
Next i
End Sub
Muchas gracias ante todo : )
Tengo que buscar las coincidencias, con el campo de la primera columna, que hay entre la tabla origen y una segunda tabla con 3000 entradas, con 3 columnas, pero sólo la primera tiene contenido.
Si encuentra una coincidencia en alguna celda de la primera columna, tiene que rellarme la segunda y tercer columna de la segunda tabla, en la fila correspondiente a la del campo de la primera celda coincidente.
Para que nos entendamos es un listado de 4000 mil NIF's viejos, y las 2 columnas son contraseñas.
Ahora sólo hay 3000 NIF's, los tengo listados, pero quiero rellenarlo con su correspondientes contraseñas.
Código:
Sub Prueba()
Const TOTAL = 4330
Dim tablaOR, tablaDE, nif, pass1, pass2 As String
Dim i As Integer
'Ini variables
tablaOR = "hoja1"
tablaDE = "hoja2"
nif = "A"
pass1 = "B"
pass2 = "C"
'empieza for
For i = 1 To TOTAL
If ThisWorkbook.Worksheets(tablaOR).Application.Cells(i).Columns(nif).Value = ThisWorkbook.Worksheets(tablaDE).Application.Cells(i).Columns(nif).Value Then
ThisWorkbook.Worksheets(tablaDE).Application.Cells(i).Columns(nif).Activate
ThisWorkbook.Worksheets(tablaDE).Application.Cells(i).Columns(pass1).Value = ThisWorkbook.Worksheets(tablaOR).Application.Cells(i).Columns(pass1).Value
ThisWorkbook.Worksheets(tablaDE).Application.Cells(i).Columns(pass2).Value = ThisWorkbook.Worksheets(tablaOR).Application.Cells(i).Columns(pass2).Value
End If
Next i
End Sub
Muchas gracias ante todo : )
1 respuesta
Respuesta de santiagomf
1