Realizar Macro

Hola, nunca he realizado una macro de excel, pero me da la impresión de que es lo que necesito para automatizar las siguientes acciones:
Copiar una selección y pegarla en una nueva hoja, poniéndole al nombre de la hoja el texto que aparece en la celda A3 de la nueva hoja.
Por favor, explicadlo para alguien que no ha hecho nunca una macro.
Gracias de antemano.

1 respuesta

Respuesta
1
Si no has realizado nunca una macro, pues estas en buena hora para aprender utilizando la "Autogestión", lo primero es familiarizarte con algunos conceptos sobre las macros, te sugiero revises la ayuda de Excel presiona F1. Aprenderás mucho de allí si lo que buscas es aprender y no limitarte a ser una copia y pega script.
En primera instancia no necesitas ser experto en programación ni nada de eso para desarrollar una buena macro. Una macro no es más que el resumen de las acciones que haces manualmente y que se traducen a código para que a posterior repitas todo el evento sin necesidad de hacerlo otra vez a mano, claro esta que el correcto funcionamiento de un macro, depende de que se ejecute siempre en igualdad de condiciones, es decir si haces una macro para la hoja llamada "Hoja1" y luego cambias el nombre de la hoja, la macro no correrá, a menos que actualices la referencia a ese nombre dentro del macro.
Bien ahora vamos a lo que te interesa.
En excel tienes un botón que indica "Grabar Macro", si no lo tienes a la vista debes sacarlo. Si utilizas Excel2007 este botón aparece en la pestaña Programador, si no esta activa has lo siguiente: presiona F1 y busca "grabar Macro" allí te inidca como activar esa pestaña y el mentado botón
este botón es una grabadora de "acciones", (sobre Excel),
para hacer una macro para pegar datos de hoja1 a hoja2 sencillamente, presionas el botón "grabar macro" y realizas las acciones de copiar y pegar, luego que terminaste de ejecutar, todas y cada unas de las acciones que te interesa repetir, presionas nuevamente el botón "Grabar Macro" y ya esta, has creado tu primera macro!.
Para correr el macro debes presionar las Teclas Alt + F8, y ejecutar en la opción Ejecutar paso a paso podrás ver el código de la macro en lenguaje "Visual basic para excel" y puedes seguir linea a linea la ejecución del mismo, te aconsejo ver esa opsción con detenimiento, se deduce mucho del funcionamiento de algunas acciones mediante el análisis del código, para pasar de linea en linea en el editor de Visual basic, en modo ejecución paso a paso debe ir presinando la tecla F8, iras viendo el progreso de la macro destacado en amarillo.
Hola calvuch!
Ante todo, gracias por responder tan rápido.
Estoy intentando seguir tus instrucciones, pero me he quedado atrancada.
No puedo "pegar" el texto de una celda en el nombre de la hoja. Osea, la pregunta es: como hacer para que una hoja tome el nombre del texto que aparece en una celda (en concreto la A3 de la misma hoja que quiero cambiar el nombre).
Espero haberme explicado bien.
Un saludo.
Ok, para eso es necesario intervenir directamente el código, eso no es posible hacerlo de la forma que te indicaba, pues hay que referenciar el origen de el dato
abre el editor de Visual basic y pon este macro en alguna hoja que te interese ejemplo Hoja1
Sub renombrar()
' renombrar hoja2 con el contenido de celda A1 de la hoja1
Hoja1.Range("A1").Select   'seleciona la hoja1
If Hoja1.Range("A1").Value = Empty Then Exit Sub  ' si la celda A1 esta vacia se sale
Hoja2.Name = Hoja1.Range("A1").Value ' renombra hoja2 con celda A1 de hoja1
End Sub
Esto toma el valor de la celda A1 de la hoja1 y le da ese nombre a la Hoja2
Hola,
perdón por no haber contestado antes.
Después de intentarlo varias veces he conseguido renombrar la hoja como me nomentas, pero solo me vale para esa hoja, la hoja2. Y no necesito que me haga la misma operación en todas las hojas que vaya añadiendo. ¿Cómo puedo decírselo a la macro?
Un saludo y gracias por tu atención.
En ese caso utiliza esto
Sub renombrar()
Dim hoja As Variant
For Each hoja In ThisWorkbook.Sheets
    hoja.Name = hoja.Range("A1").Value
Next hoja
End Sub
Pondrá el nombre a la hoja en función del contenido de A1 de cada hoja
Muchas gracias!
Lo había intentado pero sola nunca lo hubiese conseguido.
Ahora, si no es mucho abusar me gustaría saber si se puede anular/ampliar la limitación de caracteres en el nombre de una hoja, porque algunos son muy largos y no me deja ponerlos.
Mil gracias otra vez.
Una pregunta a la vez, si la respuesta anterior te funciona, favor evaluar y cerrar la pregunta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas