Inicio de sesión

Nombre de usuario o e-mail

En línea

En este momento hay 1 usuario y 8 invitados en línea.

No funciona mi Macro

Pido de su ayuda nuevamente.

quiero crear mi complemento para hacer un reporte. pero al correr el siguiente codigo en el modulo del libro donde voy a hacer el reporte no hay problema, pero al correrlo como complemento me sale un error  y me selecciona la fila donde quiero agrgar una fila ayudenme por favor me la pase toda la noche y no encontre el problema

Hoja1.Select
ActiveSheet.Name = "MRP01"
ActiveSheet.Next.Select
ActiveSheet.Name = "MRP02"
'
Hoja1.Select

    Rows("1:1").Select
    Selection.Insert Shift:=xlDown
    Columns("A:B").Select
    Selection.Insert Shift:=xlToRight
   
    Range("A1") = "Localidad"
    Range("B1") = "Company"
    Range("C1") = "Supplier"
    Range("D1") = "Item"
    Range("E1") = "Descrip"
    Range("F1") = "Planner Code"
    Range("G1") = "Type"
  

saludos.

pacomegia

Re: No funciona mi Macro

Los complementos, aunque estén cargados en memoria están "ocultos", no se ven sus hojas y puede que dé problemas si intentas activarlas o cambiar valores en las celdas a través de ActiveSheet. ¿dónde está Hoja1? en el complemento o en otro libro

¿el error se produce al seleccionar la hoja o en otra parte?

a mí me da error ActiveSheet.Next.Select
 

Supongo que Hoja1 es una variable que hace referencia a la hoja en cuestión

 


------
Ya sé Excel, pero necesito más
La potencia sin control no sirve de nada.
agradecimientos

UliCs

Re: No funciona mi Macro

Hola mira ya pude solucionar este problema lo que pasa es que la hoja1 que queria seleccionar era la hoja del libro donde queria hacer el reporte pero la macro queria irse a la hoja del complemento. cambie la sentencia "Hoja1.select" por la siguiente.

ActiveWorkBook.Sheets(1).Select

No se si sea la mejor forma pero funciono, por favor si hay una mejor forma ayudame.

Hoja1.Select
ActiveSheet.Name = "MRP01"
ActiveSheet.Next.Select
ActiveSheet.Name = "MRP02"
'
Hoja1.Select

    Rows("1:1").Select
    Selection.Insert Shift:=xlDown
    Columns("A:B").Select
    Selection.Insert Shift:=xlToRight
   
    Range("A1") = "Localidad"

Saludos y Muchas Gracias.

 

Necesito saber Mas

pacomegia

Re: No funciona mi Macro

Esto es un despiste típico, entre el libro activo, el libro que contiene el código, otros libros abiertos, etc.

personalmente, cuando desde un complemento me quiero referir al propio complemento utilizo thisworkbook, y luego lo que sea, por ejemplo thisworkbook.sheets("hoja1")...

Más elegante es la utilización de variables de tipo Objeto, que simplifican la manera en que te refieres a una hoja en concreto, o a un libro

aunque para la mayoría de los casos, teniendo un poco de cuidado con el libro/hoja que está activo en cada momento, puedes resolverlo con activesheet, activecell, etc. 


------
Ya sé Excel, pero necesito más
La potencia sin control no sirve de nada.
agradecimientos

Si te gusta, ¡ compártelo !

apúntate a nuestro Newsletter

 

Encuesta

Sígueme