grabar nueva macro

03/05/2004 - 18:53 por o.q. | Informe spam
Hola a todos

Pongo el ejemplo de que voy al menu herramientas , macro, grabar nueva macro
y pongo en la A1...A2...A3...A4 una serie de valores y luego los sumo.

Paro la macro, y al situarme por ejemplo en la celda F10, SOLO me copia el
primer valor, es decir el que tiene la celda A1, para ello me tendria que
situar en A1, para que asi la macro se ejecute rellenando A1, A2, A3..
etc. Pero ¿como se hace para que se ejecute en cualquier celda? (si es
que se puede.).

saludos

Preguntas similare

Leer las respuestas

#6 Nilda Beatriz Díaz
04/05/2004 - 13:41 | Informe spam
Así es la macro y funciona

Sub Macro1()
'
' Macro1 Macro
' Macro grabada el 04/05/2004 por Nilda Beatriz Díaz
' ActiveCell.FormulaR1C1 = "1"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "2"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "3"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "4"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "5"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-5]C:R[-1]C)"
ActiveCell.Offset(1, 0).Range("A1").Select
End Sub

Suerte
Nilda Beatriz Díaz
MS - MVP
Desde el tercer planeta a partir del Sol
"o.q." escribió en el mensaje
news:O6$
Gracias Nilda, acabo de probarlo y me pasa lo siguiente, te digo lo que
hago:

Le doy a "grabar macro" y acepto

Pincho en referencia relativa que tiene hasta dejar el fondo en naranja.

Pongo desde la A1 hasta la A4 los valores 1.2.3.4 y luego los sumo en A5

Doy a detener.

Me situo en la celda C1 y ejecuto la macro, me copia lo siguiente:

1
0
3
4
5



En vez de ponerme

1
2
3
4
5
15

Además me da un error "se ha producido el error 1004 en tiempo de ejecucion,
error definido por la aplicacion o el objeto, le doy a depurar y tengo esto:
Sub Macro3()
'
' Macro3 Macro
' Macro grabada el 04/05/2004 por oskar
'

'
ActiveCell.FormulaR1C1 = "1"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "2"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "3"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "4"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "5"
ActiveCell.Offset(-4, 0).Range("A1:A6").Select
ActiveCell.Offset(1, 0).Range("A1").Activate
ActiveCell.FormulaR1C1 = "=SUM(R[-5]C:R[-1]C)"
ActiveCell.Offset(-5, 0).Range("A1:A6").Select
End Sub



¿que está pasando?

saludos



"Nilda Beatriz Díaz" escribió en el mensaje
news:#
> Hola, para que se ejecute en cualquier celda, antes de comenzar a ingresar
el primer
> valor, tienes que activar el botón de "Referencias relativas", es el otro
botón que te
> muestra la barra de grabación.
>
> Suerte
> Nilda Beatriz Díaz
> MS - MVP
> Desde el tercer planeta a partir del Sol
> "o.q." escribió en el mensaje
> news:%
> > Hola a todos
> >
> > Pongo el ejemplo de que voy al menu herramientas , macro, grabar nueva
macro
> > y pongo en la A1...A2...A3...A4 una serie de valores y luego los sumo.
> >
> > Paro la macro, y al situarme por ejemplo en la celda F10, SOLO me copia
el
> > primer valor, es decir el que tiene la celda A1, para ello me tendria
que
> > situar en A1, para que asi la macro se ejecute rellenando A1, A2,
A3..
> > etc. Pero ¿como se hace para que se ejecute en cualquier celda? (si
es
> > que se puede.).
> >
> > saludos
> >
> >
> >
> >
>
>


Respuesta Responder a este mensaje
#7 Manuel Romero
04/05/2004 - 17:05 | Informe spam
coloca el cursor encima del comando y presiona F1

"o.q." escribió en el mensaje
news:%
En un libro de excel me pone que en estas lineas tengo que tener:

activecell.offset (3,1).range ("a1").select
activecell.formulaR1C1 ="1"

¿os es algo antiguo ? (es un libro de excel 5.0 y yo tengo o 2000 o 2003)

Por cierto. ¿que significa el (3,1) que está entre paréntesis y


formula
R1C1

gracias

"Mario Mata" escribió en el mensaje
news:7c3801c43199$43b83700$
ActiveCell.FormulaR1C1 = "1"
ActiveCell.Next.Select
ActiveCell.FormulaR1C1 = "2"
ActiveCell.Next.Select
ActiveCell.FormulaR1C1 = "3"
ActiveCell.Next.Select
ActiveCell.FormulaR1C1 = "4"
ActiveCell.Next.Select
ActiveCell.FormulaR1C1 = "5"
ActiveCell.Next.Select
ActiveCell.FormulaR1C1 = "=SUM(RC[-5]:RC[-1])"


>Hola a todos
>
>Pongo el ejemplo de que voy al menu herramientas ,
macro, grabar nueva macro
>y pongo en la A1...A2...A3...A4 una serie de valores y
luego los sumo.
>
>Paro la macro, y al situarme por ejemplo en la celda
F10, SOLO me copia el
>primer valor, es decir el que tiene la celda A1, para
ello me tendria que
>situar en A1, para que asi la macro se ejecute
rellenando A1, A2, A3..
>etc. Pero ¿como se hace para que se ejecute en
cualquier celda? (si es
>que se puede.).
>
>saludos
>
>
>
>
>.
>


Respuesta Responder a este mensaje
#8 o.q.
04/05/2004 - 18:54 | Informe spam
gracias

"Manuel Romero" <mromerop_arroba_hotmail_punto_com> escribió en el mensaje
news:
coloca el cursor encima del comando y presiona F1

"o.q." escribió en el mensaje
news:%
> En un libro de excel me pone que en estas lineas tengo que tener:
>
> activecell.offset (3,1).range ("a1").select
> activecell.formulaR1C1 ="1"
>
> ¿os es algo antiguo ? (es un libro de excel 5.0 y yo tengo o 2000 o


2003)
>
> Por cierto. ¿que significa el (3,1) que está entre paréntesis y
formula
> R1C1
>
> gracias
>
> "Mario Mata" escribió en el mensaje
> news:7c3801c43199$43b83700$
> ActiveCell.FormulaR1C1 = "1"
> ActiveCell.Next.Select
> ActiveCell.FormulaR1C1 = "2"
> ActiveCell.Next.Select
> ActiveCell.FormulaR1C1 = "3"
> ActiveCell.Next.Select
> ActiveCell.FormulaR1C1 = "4"
> ActiveCell.Next.Select
> ActiveCell.FormulaR1C1 = "5"
> ActiveCell.Next.Select
> ActiveCell.FormulaR1C1 = "=SUM(RC[-5]:RC[-1])"
>
>
> >Hola a todos
> >
> >Pongo el ejemplo de que voy al menu herramientas ,
> macro, grabar nueva macro
> >y pongo en la A1...A2...A3...A4 una serie de valores y
> luego los sumo.
> >
> >Paro la macro, y al situarme por ejemplo en la celda
> F10, SOLO me copia el
> >primer valor, es decir el que tiene la celda A1, para
> ello me tendria que
> >situar en A1, para que asi la macro se ejecute
> rellenando A1, A2, A3..
> >etc. Pero ¿como se hace para que se ejecute en
> cualquier celda? (si es
> >que se puede.).
> >
> >saludos
> >
> >
> >
> >
> >.
> >
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida