VBA para una macro para completar campos vacíos

25/11/2008 - 22:01 por Angel | Informe spam
Estimados compañeros/as:

Necesito para completar una lista de datos de aproximadamente 500 datos. El
problema es que necesito que los datos de la columna A se copien en todos los
subdatos 1 y así los siguientes. Sé copiarlos cuando hay iguales números de
subdatos1, subdatos2, ... La macro funciona pero cuando no tiene el mismo
número de subdatos no lo hace.

He probado con
Sub num()
'
' num Macro
' Macro grabada el 25/11/2008 por Angel
'
' Acceso directo: CTRL+l
'
Selection.End(xlDown).Select
Selection.Copy
ActiveCell.Offset(1, 0).Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveCell.Range("A1:A37").Select -> el
problema está aquí
ActiveSheet.Paste
Selection.End(xlDown).Select
Application.CutCopyMode = False
Selection.Copy
ActiveCell.Offset(1, 0).Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveCell.Range("A1:A2").Select > el
problema está aquí
ActiveSheet.Paste
Selection.End(xlDown).Select
End Sub


El problema es que coge un número determinado de celdas y no el que puedo
seleccionar con CRT + TECLA ABAJO

TABLA QUE POSEO
A B
datos 1 subdatos1
subdatos 1
subdatos 1
datos 2 subdatos 2
subdatos 2
subdatos 2
datos 3 subdatos 3
subdatos 3
subdatos 3
subdatos 3
subdatos 3
subdatos 3
subdatos 3
datos 4 subdatos 4
subdatos 4
subdatos 4
subdatos 4
subdatos 4
subdatos 4
subdatos 4

TABLA QUE NECESITO PARA MI ANÁLISIS
datos 1 subdatos1
datos 1 subdatos 1
datos 1 subdatos 1
datos 2 subdatos 2
datos 2 subdatos 2
datos 2 subdatos 2
datos 3 subdatos 3
datos 3 subdatos 3
datos 3 subdatos 3
datos 3 subdatos 3
datos 3 subdatos 3
datos 3 subdatos 3
datos 3 subdatos 3
datos 4 subdatos 4
datos 4 subdatos 4
datos 4 subdatos 4
datos 4 subdatos 4
datos 4 subdatos 4
datos 4 subdatos 4
datos 4 subdatos 4


GRACIAS.
 

Leer las respuestas

#1 Héctor Miguel
25/11/2008 - 23:21 | Informe spam
hola, Angel !

... para completar una lista... de aproximadamente 500 datos cuando no tiene el mismo numero de subdatos ...



asumiendo que tu primer fila NO esta vacia... prueba cambiando todas esas instrucciones por algo +/- como lo siguiente:

For Each Seccion In Range("a:a").SpecialCells(xlCellTypeBlanks)
Seccion.Value = Seccion.Cells(1).Offset(-1).Value
Next

saludos,
hector.

Preguntas similares