Como pongo un mensaje cuando me aparece un error en una macro?

19/06/2005 - 03:37 por jose | Informe spam
muy buenas
Al ejecutar una macro cuando me dá error y me sale el mensaje de Microsoft
Visual Basic diciendo que se ha producido el error '****' en tiempo de
ejecución etc... hay alguna forma de poner o que me salga un mensaje con un
texto qeu ponga yo? supongo que esto será con alguna solucion de visual
basic asi que si es asi intenta explicarme lo como para tontos, ya que de
visual no tengo ni idea ni por donde empezar. Si hay que meter el codigo en
una macro eso si que se hacerlo.
Gracias

Preguntas similare

Leer las respuestas

#1 Francisco
19/06/2005 - 05:12 | Informe spam
Por que no buscas informacion sobre manejo de errores en VBA

saludos
Respuesta Responder a este mensaje
#2 Fernando Arroyo
19/06/2005 - 10:12 | Informe spam
Como dice Francisco, este tema corresponde al manejo de errores de VB. Siendo un poco más específico, mira el siguiente ejemplo:

Sub prueba()
On Error GoTo MiManejoDeErrores

Err.Raise 1004 'Simula el error 1004

Exit Sub

MiManejoDeErrores:
Select Case Err.Number
Case 1004
MsgBox "Se ha producido el error 1004"
'
'Instrucciones para cuando se produzca el error 1004
'

'
'Otros Case para otros códigos de error
'

Case Else 'Para un error no contemplado
MsgBox "Se ha producido el error " & Err.Number & " - " & Err.Description & vbNewLine & "El código se detendrá."
Exit Sub
End Select
End Sub


El código simula el error 1004 para que se dispare la captura de errores. Aparecerá un mensaje indicando que se ha producido dicho error. Si cambias 1004 por cualquier otro código, también se disparará la captura de errores, pero en este caso mostrará un mensaje genérico.
Un saludo.


Fernando Arroyo
MS MVP - Excel

"jose" escribió en el mensaje news:i%3te.1487414$
muy buenas
Al ejecutar una macro cuando me dá error y me sale el mensaje de Microsoft
Visual Basic diciendo que se ha producido el error '****' en tiempo de
ejecución etc... hay alguna forma de poner o que me salga un mensaje con un
texto qeu ponga yo? supongo que esto será con alguna solucion de visual
basic asi que si es asi intenta explicarme lo como para tontos, ya que de
visual no tengo ni idea ni por donde empezar. Si hay que meter el codigo en
una macro eso si que se hacerlo.
Gracias


Respuesta Responder a este mensaje
#3 jose
19/06/2005 - 18:22 | Informe spam
Que hago con este código?, lo meto como si fuese una macro, mmmm, no lo
tengo claro.


"Fernando Arroyo" escribió en el mensaje
news:%
Como dice Francisco, este tema corresponde al manejo de errores de VB.
Siendo un poco más específico, mira el siguiente ejemplo:

Sub prueba()
On Error GoTo MiManejoDeErrores

Err.Raise 1004 'Simula el error 1004

Exit Sub

MiManejoDeErrores:
Select Case Err.Number
Case 1004
MsgBox "Se ha producido el error 1004"
'
'Instrucciones para cuando se produzca el error 1004
'

'
'Otros Case para otros códigos de error
'

Case Else 'Para un error no contemplado
MsgBox "Se ha producido el error " & Err.Number & " - " &
Err.Description & vbNewLine & "El código se detendrá."
Exit Sub
End Select
End Sub


El código simula el error 1004 para que se dispare la captura de errores.
Aparecerá un mensaje indicando que se ha producido dicho error. Si cambias
1004 por cualquier otro código, también se disparará la captura de errores,
pero en este caso mostrará un mensaje genérico.
Un saludo.


Fernando Arroyo
MS MVP - Excel

"jose" escribió en el mensaje
news:i%3te.1487414$
muy buenas
Al ejecutar una macro cuando me dá error y me sale el mensaje de Microsoft
Visual Basic diciendo que se ha producido el error '****' en tiempo de
ejecución etc... hay alguna forma de poner o que me salga un mensaje con
un
texto qeu ponga yo? supongo que esto será con alguna solucion de visual
basic asi que si es asi intenta explicarme lo como para tontos, ya que de
visual no tengo ni idea ni por donde empezar. Si hay que meter el codigo
en
una macro eso si que se hacerlo.
Gracias


Respuesta Responder a este mensaje
#4 Francisco
20/06/2005 - 04:40 | Informe spam
Seguimos en lo mismo si no comprendes un ejemplo sencillo como el que expone
fernando, mejor vete a la ayuda y busca temas al respecto para que
comprendas el punto

Saludos
Respuesta Responder a este mensaje
#5 KL
20/06/2005 - 15:56 | Informe spam
Hola chicos,

"Francisco" wrote in message
...si no comprendes un ejemplo sencillo...
mejor vete a la ayuda y busca temas al respecto para que comprendas el
punto



Creo que Francisco estara de acuerdo que eso de "sencillo" es muy relativo y
que en este foro se llegan a contestar y explicar cuestiones mucho mas
senciallas sin tener que rebotar a uno a la ayuda de Excel necesariamente. Y
precisamente en este caso donde, a mi ver, la ayuda de Excel no es que sea
demasiado abundante por decirlo de alguna manera ;-)

"jose" wrote in message
Que hago con este código?, lo meto como si fuese una macro...



Antes que nada decir que "macro" es uno de los nombres que usan para
referirse a los sub-procedimientos. El codigo que te propone Fernando como
ejemplo es un sub-procedimiento o macro - da igual como lo llames. Como
regla general, los macros se introducen en un libro de Excel usando la
grabadora de macros (menu Herramientas>Macro>Grabar macro nuevo) o
escribiendo/copiando el procedimiento directamente en un modulo elegido
(otros metodos incluyen importacion de los archivos de texto que contienen
codigo, creacion de codigo "al vuelo" mediante ejecuccion de otro codigo,
etc.).

El codigo que te ofrece Fernando lo podrias usar de la siguiente manera:

1) haz clic-derecho sobre el nombre de cualquier hoja en una de las pestañas
de la parte de abajo de la ventana de Excel.
2) Elige la opcion Ver Codigo para abrir el editor VBA.
3) Una vez en el Editor VBA, ve al menu Insertar>Modulo
4) En la ventana mas grande a la derecha pega el codigo de Fernando
5) Ahora pulsa Alt+F11 para volver a la hoja.
6) Pulsa Alt+F8
7) Busca el macro "prueba" y haz doble clic sobre el.

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