Script para autocompletar celdas con datos de una columna
No soy programador ni nada parecido, pero estuve buscando la manera de auto rellenar las celdas de alguna columna de mi Hoja1 con los datos de alguna columna de mi Hoja2 y aquí en todoexpertos conseguí alguien que posteó este código:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Fila, Columna, Longi As Integer
Dim Valor As String
Dim Celda As Variant
Fila = Target.Row
Columna = Target.Column
Valor = UCase(Cells(Fila, Columna))
If (Valor <> "") And (Columna = 2) Then
Longi = Len(Valor)
For Each Celda In Sheets(2).Range("A2", Sheets(2).Range("A2").End(xlDown))
If Valor = Left(UCase(Celda.Value), Longi) Then
Cells(Fila, Columna) = Celda.Value
Exit For
End If
Next Celda
End If
End Sub
Funciona casi perfecto, pero cuando escribo y presiono ENTER o TAB me lanza un "Error en el método 'Range' de objeto '_Worksheet'", y si presiono finalizar puedo continuar llenando los datos. El problema es que cada vez que guardo y abro de nuevo la hoja me lanza el mismo error. Estoy trabajando con Office 2007. ¿Qué podrá ser?
La explicación de lo que hace la macro está en este enlace:
En mi hoja 2 tengo una lista de diferentes localidades de Venezuela:
ACARIGUA
Anaco
Barinas
Barquisimeto
Santa rosa
Cabimas
Cagua
Calabozo
Caracas
Carora
Carupano
Ciudad bolivar
Ciudad ojeda
CORO
...