Borrar macros

17/02/2005 - 08:15 por pepefras | Informe spam
Cuando creo un nuevo libro desde otro por código, "hereda todas las macros"
de el libro de donde procede. Me gustaria incluir un código que las borre en
la copia.
Gracias anticipadas
Pepe Frasquet

Preguntas similare

Leer las respuestas

#1 KL
17/02/2005 - 10:48 | Informe spam
Hola Pepe,

Hace algun tiempo Hector Miguel publico el siguiente codigo q te podria ser
de utilidad.

Saludos,
KL

'--Inicio Codigo
Sub Eliminar_todos_los_codigos()
Dim Modulo As VBIDE.VBComponent, _
Modulos As VBIDE.VBComponents
Set Modulos = ActiveWorkbook.VBProject.VBComponents
For Each Modulo In Modulos
Select Case Modulo.Type
Case VBExt_ct_StdModule, VBExt_ct_MSForm, _
VBExt_ct_ClassModule
Modulos.Remove Modulo
Case Else
With Modulo.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next
Set Modulos = Nothing
End Sub
'--Fin Codigo


"pepefras" wrote in message
news:eM$
Cuando creo un nuevo libro desde otro por código, "hereda todas las
macros" de el libro de donde procede. Me gustaria incluir un código que
las borre en la copia.
Gracias anticipadas
Pepe Frasquet

Respuesta Responder a este mensaje
#2 pepefras
18/02/2005 - 05:42 | Informe spam
Saludos KL
Cuando corre la macro me aparece el error :
"Error de compilación:
No se ha definido el tipo definido por usuario"
Sobre la línea: Dim Modulo As VBIDE.VBComponent
¿Puede que falte cargar alguna referencia? ó es otra cosa?
Agradezco la ayuda
Pepe Frasquet

"KL" escribió en el mensaje
news:
Hola Pepe,

Hace algun tiempo Hector Miguel publico el siguiente codigo q te podria
ser de utilidad.

Saludos,
KL

'--Inicio Codigo
Sub Eliminar_todos_los_codigos()
Dim Modulo As VBIDE.VBComponent, _
Modulos As VBIDE.VBComponents
Set Modulos = ActiveWorkbook.VBProject.VBComponents
For Each Modulo In Modulos
Select Case Modulo.Type
Case VBExt_ct_StdModule, VBExt_ct_MSForm, _
VBExt_ct_ClassModule
Modulos.Remove Modulo
Case Else
With Modulo.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next
Set Modulos = Nothing
End Sub
'--Fin Codigo


"pepefras" wrote in message
news:eM$
Cuando creo un nuevo libro desde otro por código, "hereda todas las
macros" de el libro de donde procede. Me gustaria incluir un código que
las borre en la copia.
Gracias anticipadas
Pepe Frasquet





Respuesta Responder a este mensaje
#3 KL
18/02/2005 - 08:30 | Informe spam
"pepefras" wrote in message
news:
Saludos KL
Cuando corre la macro me aparece el error :
"Error de compilación:
No se ha definido el tipo definido por usuario"
Sobre la línea: Dim Modulo As VBIDE.VBComponent
¿Puede que falte cargar alguna referencia? ó es otra cosa?
Agradezco la ayuda
Pepe Frasquet

"KL" escribió en el mensaje
news:
Hola Pepe,

Hace algun tiempo Hector Miguel publico el siguiente codigo q te podria
ser de utilidad.

Saludos,
KL

'--Inicio Codigo
Sub Eliminar_todos_los_codigos()
Dim Modulo As VBIDE.VBComponent, _
Modulos As VBIDE.VBComponents
Set Modulos = ActiveWorkbook.VBProject.VBComponents
For Each Modulo In Modulos
Select Case Modulo.Type
Case VBExt_ct_StdModule, VBExt_ct_MSForm, _
VBExt_ct_ClassModule
Modulos.Remove Modulo
Case Else
With Modulo.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next
Set Modulos = Nothing
End Sub
'--Fin Codigo


"pepefras" wrote in message
news:eM$
Cuando creo un nuevo libro desde otro por código, "hereda todas las
macros" de el libro de donde procede. Me gustaria incluir un código que
las borre en la copia.
Gracias anticipadas
Pepe Frasquet









Respuesta Responder a este mensaje
#4 KL
18/02/2005 - 08:32 | Informe spam
Hola Pepe

¿Puede que falte cargar alguna referencia? ó es otra cosa?



Efectivamenete, tienes q establecer la referencia a VBA Extensibility
Library (desafortunadamente no se como lo pondria en castellano).

Saludos,
KL
Respuesta Responder a este mensaje
#5 osalazarg
18/02/2005 - 21:03 | Informe spam
En excel

la referencia se llama Microsoft Visual Basic Applications Extensibility,
dependiendo de la version que tengas sera 5.3 o 5.4 etc.

Saludos.


KL wrote:

Hola Pepe

>¿Puede que falte cargar alguna referencia? ó es otra cosa?

Efectivamenete, tienes q establecer la referencia a VBA Extensibility
Library (desafortunadamente no se como lo pondria en castellano).

Saludos,
KL
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida