Llenar Celdas vacías

Buen día mi pregunta es como rellenar celdas vacías con datos anteriores.
Ejemplo: Tengo una columna donde tengo valores separados por celdas lo que quiero hacer es que el primer dato lo repita hasta donde empieza el segundo dato y así sucesivamente hasta recorrer todos los datos.
Tengo el sig código pero no me funciona.
Sub LlenaBlnk()
ActiveSheet.Range(Cells(ActiveCell.Row, ActiveCell.Column), Cells(ActiveCell.SpecialCells(xlLastCell).Row, ActiveCell.Column)).Select
On Error GoTo ControlError:
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.FormulaR1C1 = "=R[-1]C"
Selection.CurrentRegion.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
ActiveCell.Select
Exit Sub
ControlError:
MsgBox "Esta columna ya tiene sus celdas con dato", vbInformation, "Rango completo"
Err.Clear
ActiveCell.Select
End Sub
Agradeceria me ayudaras.
1

1 respuesta

1
Respuesta de
Hola, Julio!
Por lo que puedo ver en tu macro, este coincide con un "truco" que alguna vez recomendé en este mismo sitio.
Selecciona la columna a completar con el dato superior, desde la primera ocupada hasta la última línea.
Con el área aún seleccionada, presiona F5 (atajo de Ir a...)
En la pantalla que aparece presiona el botón "Especial" y marca la opción "Celdas en blanco", presiona el botón "Aceptar"
Con esto, se habrá seleccionado todas las celdas vacías entre cada dato.
Así como está, escribe =C10
y presiona Ctrl+Enter.
(Si tu primer celda seleccionada, ahora, fuese C11. Es decir: selecciona la celda inmediata superior)
Esto llenará las celdas vacías con una fórmula que lee la celda superior, tomando el dato que allí encuentre y cambiando cuando aparece un dato distinto.
Finalmente puedes copiar todo este rango de celdas con fórmulas y pegarlo sobre el mismo rango como valor usando "Pegado Especial..."
Creo que esto es lo que quieres y la macro que mencionas funciona correctamente.
Ten en cuenta que, antes de ejecutarla, debes seleccionar una celda con dato, dentro del rango a completar.
Prueba con esto y dime si resuelve tu problema, si no dime cual es el error que provoca la macro.
Esto debería resolver tu pregunta. Si así fuera, agradeceré un comentario y que la finalices.
Si no, pregúntame de nuevo.
Un abrazo!
Fernando
*====================================*
La presente respuesta ha demandado un tiempo de lectura,
análisis, elaboración y redacción. A cambio, simplemente,
Pretendo que te tomes un minuto para FINALIZARLA, si
Hubiera satisfecho -en alguna medida- tu requerimiento.
(Considera que la valoración que figura predeterminada
es 3/5. Tal vez quieras cambiarla...)
En caso contrario, puedes preguntarme nuevamente
Aclarando qué entendí mal o qué faltó. Gracias...
*====================================*
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje
¿No es la respuesta que estabas buscando? Puedes explorar otras preguntas del tema Microsoft Excel o hacer tu propia pregunta: