Home > Foro de Excel >

Debates de Excel > Obtener el valor de una pestaña y ponerlo en una celda

Grupo de Excel
Foro de Excel
18166 Debates | 2015 Documentos | 1 Vídeo | 1 Test | 1 Blog | 676 Imágenes | 16781 Miembros

Obtener el valor de una pestaña y ponerlo en una celda

Yusef
Estado de México, Mé...
Escrito por Yusef Haddad el 15 de Octubre | Nivel Medio

Que tal Abraham,

Tengo un sistema de pedidos extraordinarios en mi empresa, cada pestaña es una hoja y lleva un folio consecutivo, cuando inserto una hoja tengo que poner el valor en la pestaña y también en la hoja para poder imprimirlo, hay alguna manera de:

1. Al insertar una pestaña nueva se ponga el folio que sigue en vez de hoja 1, hoja 2 etc...

2. Una vez insertada la hoja, puedo obtener el valor de la pestaña, por ejemplo que se llamara 567 para ponerlo en una celda y que de esta manera al insertar una hoja nueva todo se haga en automático.

Espero me puedas ayudar,

Saludos.

Buen día


Citar  |  
Ver mensaje      

Armando Montes
Chihuahua, México
Escrito por Armando Montes el 16 de Octubre | Nivel Medio

Hola Yusef, intenta con algo asi:
Sub InsertarHojas()
For i = 2 To 7
Sheets(1). Copy After:=Sheets(Sheets. Count)
Sheets(Sheets. Count). Name = "Nombre" & i
Next i
End Sub
Para el nombre de la pestaña:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Range("A1"). Value = ActiveSheet. Name
End Sub


Citar  |  
Ver mensaje     

Yusef Haddad
Estado de México, Mé...
Escrito por Yusef Haddad el 16 de Octubre | Nivel Medio

Hola Armando, gracias por tu pronta respuesta,

Creí saber mucho de excel hasta que vi esto jejeje, me imagino que tengo que crear una macro o algo así.

Me podrías dar mas instrucciones para poder alcanzar el objetivo.

Saludos.


Citar  |  
Ver mensaje     

Armando Montes
Chihuahua, México
Escrito por Armando Montes el 16 de Octubre | Nivel Medio

Hola Yusef, solo necesitas copiar y pegar el codigo en un modulo, sugiero consultes este link: http://hojas-de-calculo-en-excel.blogspot.com/2008/01/macros-en-excel. Html
y leas el manual basico de este segundo link:
http://www.geocities.com/excelmx/ManualMacros. Pdf


Citar  |  
Ver mensaje     

Yusef Haddad
Estado de México, Mé...
Escrito por Yusef Haddad el 16 de Octubre | Nivel Medio

Hola Abraham,

Te agradezco tu ayuda, voy a leer los manuales y te mantendré al tanto.

Saludos


Citar  |  
Ver mensaje     

Enrique
Escrito por Enrique el 16 de Octubre | Nivel Medio

Pues como ya ha comentado Armando son es necesaria una macro, al menos para tu primer propósito, para el segundo se puede con fórmulas pero si vas a implementar una macro para colocar un nombre consecutivo pues de paso nos liquidamos la segunda parte. Uno de los enlaces que te envía Armando muestra como implamentar una macro, muy entendible por cierto, ya que hayas avanzado en eso te sugiro que coloques la siguiente macro en la sección de ThisWorkbook, es decir, estando en la ventana de VBE en la parte izquierda (por lo general) en la sección de Proyectos, ubica el ThisWorkbook de tu libro donde deseas colocar la macro y copia esto:

Private Sub Workbook_NewSheet(ByVal Sh As Object)
With Sh
. Name = Val(Sheets(Sheets. Count - 1). Name) + 1
. Range("A1") =. Name
End With
End Sub

Esta macro se ejecutará cada que insertes una nueva hoja y le cambiará el nombre según el de la última hoja, como tu lo deseas, de paso coloca en A1 de esa hoja el nuevo nombre.
Realiza tus cambios pertinentes.
Saludos,,,


Citar  |  
Ver mensaje     

Yusef Haddad
Estado de México, Mé...
Escrito por Yusef Haddad el 19 de Octubre | Nivel Medio

Hola Enrique, tu código me sirvió de maravilla, al igual que los textos de Armando, me estaré cultivando mucho acerca de estos macros ya que son muy funcionales.

Por otro lado, no puedo conseguir el segundo pendiente, de folear digamos la celda E5 con el número de la nueva hoja insertada.

Saludos.


Citar  |  
Ver mensaje     

Enrique
Escrito por Enrique el 20 de Octubre | Nivel Medio

Hola Yusef, no te funciona? En el procedimiento anterior está la instrucción que realiza esa tarea (te la subrayo):

Private Sub Workbook_NewSheet(ByVal Sh As Object)
With Sh
. Name = Val(Sheets(Sheets. Count - 1). Name) + 1
. Range("A1") =. Name
End With
End Sub

En este ejemplo coloca en la celda A1 el nombre de la hoja.

Saludos,,,


Citar  |  
Ver mensaje     

Yusef Haddad
Estado de México, Mé...
Escrito por Yusef Haddad el 20 de Octubre | Nivel Medio

Que tal Enrique, claro tenías razón, ahora te explico un poco el procedimiento que utilizo y ahora al aplicarlo no obtuve el resultado que yo quería.

1. Agrego la nueva hoja.

2. Copio el formato de la hoja anterior ya que contiene tablas, costos, nombre de cliente etc... Y cuando lo pego en la nueva se sustituye el valor del folio ya que estoy copiando la hoja entera.

Hay alguna manera de que cuando pegue esta hoja anterior en la nueva, me respete el actual valor del folio de la hoja?

No se si me explique?

Saludos.


Citar  |  
Ver mensaje     

Yusef Haddad
Estado de México, Mé...
Escrito por Yusef Haddad el 20 de Octubre | Nivel Medio

Hola Enrique,

Lo ideal sería poder copiar toda la hoja anterior al agregar la nueva, haciendo la función del foleado...

Me cuesta un poco de trabajo explicarlo jeje

Gracias por la ayuda.



Citar  |  
Ver mensaje     

Enrique
Escrito por Enrique el 20 de Octubre | Nivel Medio

Hola Yusef, acabo de subir un par de archivo que hice rápido para que veas dos formas distintas de hacer lo que necesitas, una es usando un botón para lo cual lo que tienes que hacer es colocarte siempre en la hoja donde está ese botón y ejecutar la macro, la otra es usando el evento NewSheet que como sabemos se ejecuta al insertar una hoja.

Saludos,,,


Citar  |  
Ver mensaje     

Yusef Haddad
Estado de México, Mé...
Escrito por Yusef Haddad el 20 de Octubre | Nivel Medio

Hola Enrique, donde puedo ver esos archivos?

Saludos...


Citar  |  
Ver mensaje     

Enrique
Escrito por Enrique el 20 de Octubre | Nivel Medio

En la sección Documentos


Citar  |  
Ver mensaje     

Yusef Haddad
Estado de México, Mé...
Escrito por Yusef Haddad el 9 de Noviembre | Nivel Medio

Hola Enrique,

No había visto el msj, no encuentro la sección de documentos :(


Saludos.


Citar  |  
Ver mensaje     

Yusef Haddad
Estado de México, Mé...
Escrito por Yusef Haddad el 11 de Noviembre | Nivel Medio

Hola Enrique, no he podido encontrar los ejemplos que subiste? Me podrías decir el nombre de los archivos de favor para poder encontrarlos.


Te agradezco mucho tu ayuda!

Saludos.


Citar  |  
Ver mensaje     

Enrique
Escrito por Enrique el 11 de Noviembre | Nivel Medio

Ok ten envío los enlaces Ejemplo usando botón y ejemplo usando eventos

Saludos,,,


Citar  |  
Ver mensaje     


Responder


Quiero recibir alertas por email cuando haya mensajes nuevos en este debate

Al escribir en el debate:
  1. Repasa la ortografía y no escribas en formato SMS.
  2. Lee el texto dos veces antes de publicar.
  3. No escribas todo en mayúsculas o negritas.
 
Páginas internacionales: España  |  Italia  |  Francia  |  México  |  Alemania  |  Reino Unido  |  Argentina  |  Chile  |  Colombia  |  USA

Búsquedas frecuentes: como sacar porcentajes como crear un software valores normales biometria hematica liquido en el ombligo sacar vida laboral

Emagister cumple la Ley Orgánica 15/1999 de 13 de diciembre, de Protección de datos de Carácter Personal, y posee el código de inscripción nº 2002010053 del Registro General de la Agencia de Protección de Datos. Copyright © 1999/2000 - Grupo Intercom - Todos los derechos