[Excel] Método de Relleno Automático en una macro

Resuelto
Arn's Mensajes publicados 25 Estado Miembro -  
pijaku Mensajes publicados 13513 Fecha de registro   Estado Moderador Última intervención   -
Hola a todos,

En una macro, deseo utilizar el método Autofill para rellenar automáticamente ciertas celdas. El problema es que no conozco de antemano el número de celdas a rellenar.

Me explico:

Cuando utilizo un archivo1 (cuyas celdas A1 a A10 están llenas) para grabar mi macro, relleno las celdas B1 a B10 utilizando el controlador de relleno y obtengo entre otras la siguiente línea:

Selection.AutoFill Destination:=Range("B1:B10")


Pero cuando aplico la macro a un archivo2 cuyas celdas A1 a A15 están llenas, la macro solo me rellena las celdas B1 a B10.

Gracias de antemano por sus respuestas. Quedo a disposición para eventuales preguntas.

2 respuestas

Arn's Mensajes publicados 25 Estado Miembro 7
 
Ah, está bien, ya encontré. Para tu información, solo hay que calcular N=número de filas y reemplazar 10 por N:

Dim NbLignes NbLignes = ActiveSheet.UsedRange.Rows.Count Range("B1").Select Selection.AutoFill Destination:=Range("B1:B" & NbLignes), Type:=xlFillDefault Range("B1:B" & NbLignes).Select
4
pijaku Mensajes publicados 13513 Fecha de registro   Estado Moderador Última intervención   2 772
 
Hola,
Puedes utilizar esto:

Dim numlign As Integer
numlign = Sheets("Hoja1").Range("A65536").End(xlUp).Row ' devuelve el número de la última fila "no vacía" de la columna A
Selection.AutoFill Destination:=Range("B1:B" & numlign)

--
Atentamente,

-- Lo que vale la pena hacer, vale la pena hacerlo bien --
1