Macro sencilla

Solo consultas sobre macros y código VBA Excel.
Reglas del Foro 1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!

Macro sencilla

Notapor Daniel05 » 04 Oct 2018 06:33

Hola compañeros del foro!

Resulta que estoy intentando hacer una macro para automatizar una tarea bastante rutinária y aburrida que me ha tocado hacer :(

Lo que quiero que haga la macro es: de un rango activo ( que seleccione yo ) me arrastre tantas filas como diga el número natural (van del 2 al 20 como múcho) que hay en una celda del rango. Una vez ha hecho esto que seleccioneuna celda y todas las de por debajo que ha arrastrado (por ejemplo si el rango arrastrado es A1:L2, que me seleccione el rango B1:B2 (celda B1 y la que está por debajo) y que rellene con una serie de 10.

Grácias a grabar macro tengo el código para un rango concreto, lo que quiero es genealizarlo para cada rango que seleccione yo.
He aconseguido la línea de código para que trabaje sobre el rango que seleccione yo pero a partir de ahi estoy perdido :roll:

Adjunto código para un rango concreto:

Sub Pos()
'
' Pos Macro
'
ActiveSheet.UsedRange.Select
Selection.AutoFill Destination:=Range("A1:L2"), Type:=xlFillCopy
Range("B1:B2").Select
Selection.DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, _
Step:=10, Trend:=False

End Sub

Grácias de antemano :D :D
Daniel05
Miembro Nuevo
Miembro Nuevo
 
Mensajes: 4
Registrado: 13 Jun 2018 06:10

Re: Macro sencilla

Notapor Haplox » 09 Oct 2018 08:31

No entiendo qué pretendes hacer con ese código. ¿Cuántas filas son (ese número de la columna)? ¿El destino siempre es A1:L2? ¿Qué clase de rango seleccionas?... Como ves hay muchas incognitas para hacer algo.

Mejor sube un archivo con el antes y después, explicando bien lo que necesitas
Haplox
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 41
Registrado: 01 Mar 2017 07:42

Re: Macro sencilla

Notapor Daniel05 » 15 Oct 2018 07:45

Okey, era mi primer mensaje.
Ahí va lo que quiero paso a paso y con los dos excels.

Primero tengo esto, que lo entro manualmente:
Antes-ForoExcel.xlsm


Y lo que quiero conseguir es esto:
Despues-ForoExcel.xlsm


Para aclararlo:

Después de seleccionar la fila, la arrastro tantas veces como la columna de NumPos dice, clico en la opcion de copiar datos, selecciono las celdas de la columna de posición (sólo la de la fila original y las creadas al arrastrar) y por último les indico que las serie se me incremente en 10 cada vez.

Gracias de antemano :D
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Daniel05
Miembro Nuevo
Miembro Nuevo
 
Mensajes: 4
Registrado: 13 Jun 2018 06:10

Re: Macro sencilla

Notapor Haplox » 16 Oct 2018 03:18

Puedes usar el siguiente código Daniel

Código: Seleccionar todo
Sub CopiarFilas()
Dim uFil As Long, nFil As Long

Application.ScreenUpdating = False

nFil = Cells(2, "R")
Range("A2:R2").AutoFill Destination:=Range("A2:R" & nFil + 1), Type:=xlFillCopy

uFil = Range("A" & Rows.Count).End(xlUp).Row
Range("C2:C" & uFil).DataSeries Rowcol:=xlColumns, step:=10

End Sub
Haplox
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 41
Registrado: 01 Mar 2017 07:42

Re: Macro sencilla

Notapor Daniel05 » 17 Oct 2018 04:29

Primero de todo gracias por la macro, funciona correctamente, pero sólo para la línea 1, es decir, la fila A.
Si pudieses, me gustaría esto mismo pero de una fila "n" que seleccione, ya que no solo voy a entrar una línea, entro unas 150 al día en este mismo excel.

Grácias de antemano.
Daniel05
Miembro Nuevo
Miembro Nuevo
 
Mensajes: 4
Registrado: 13 Jun 2018 06:10

Re: Macro sencilla

Notapor Cacho R » 17 Oct 2018 09:55

.
Hola! Daniel. Lo siguiente:

Daniel05 escribió:... ya que no solo voy a entrar una línea, entro unas 150 al día en este mismo excel.

denotaría que no has exlicado bien tu necesidad puesto que no te imagino ejecutando 150 veces por día la macro.
Es más probable que tu idea sea cargar esas 150 líneas y que ejecutando la macro obtengas lo buscado.

Entonces vuelve a subir al Foro un Excel con dos hojas (el resto de la info que no tiene que ver con este tema, por favor no la incluyas):

- En la primera hoja pon unas 5 (en lugar de 150) líneas con datos.
- En la segunda hoja pon lo que esperas obtener de procesar aquéllas, ¿Ok?...

Saludos, Cacho R.
.
Avatar de Usuario
Cacho R
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 10323
Registrado: 23 Jun 2011 17:15
Ubicación: Buenos Aires

Re: Macro sencilla

Notapor Haplox » 17 Oct 2018 10:08

Exactamente com dice Cacho... me da que no has explicado nada bien lo que necesitas :|
Haplox
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 41
Registrado: 01 Mar 2017 07:42

Re: Macro sencilla

Notapor Cacho R » 17 Oct 2018 21:56

Haplox escribió:Exactamente com dice Cacho... me da que no has explicado nada bien lo que necesitas :|

Tampoco exageremos Haplox... Después de todo arrancó con un:

- Hola compañeros del foro

lo que además de cortés y respetuoso fue muy claro, jejeje.
Avatar de Usuario
Cacho R
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 10323
Registrado: 23 Jun 2011 17:15
Ubicación: Buenos Aires

Re: Macro sencilla

Notapor Haplox » 18 Oct 2018 05:13

Tampoco exageremos Haplox...


Hombre, si he sido respetuoso... solo que no me he enterado de nada :lol:
Haplox
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 41
Registrado: 01 Mar 2017 07:42

Re: Macro sencilla

Notapor Cacho R » 18 Oct 2018 10:25

Haplox escribió:... solo que no me he enterado de nada :lol:

Jajajaja... ¡Bienvenido al "Club"! :mrgreen: :P :D
Avatar de Usuario
Cacho R
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 10323
Registrado: 23 Jun 2011 17:15
Ubicación: Buenos Aires


Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados