Crear un mensaje al recibir mensaje de error 1004

29/06/2005 - 23:26 por jose | Informe spam
Hola,
quiero crear un mensaje al recibir un mensaje de error o cambiar el texto
del mensaje de error, als dos cosas me sirven. El caso es que tengo unas
macros en unos botones que hay veces qeu no funcionan bien y me dá el error
1004, el mensaje dice asi:
Se ha producido el eror '1004' en tiempo de ejecucion:
erroe en el metodo PasteSpecial de la clase Range

eso es porque la macro lo que hace es pegar informacion en unas celas pero
el error viene porque no he copiado nada al portapapeles, lo que quiero es
que cada vez que me salga este error, automaticamente me sale otro mensaje
con las instrucciones que yo el ponga.
Fernando Arroyo me puso este codigo, pero con este codigo lo que me hace es
crear un mensaje que yo puda personalizar, ahora digo yo como hago para que
este mensaje me salga a la vez que el error? iagual es que tengo que poner
este codigo en algun otro sitio que no sea en un modulo?
El codigo es este:

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

Preguntas similare

Leer las respuestas

#6 jose
30/06/2005 - 20:45 | Informe spam
Hola, ya he creado el mensaje, me funciona bien pero al final de cada frase
me aparece aparece un simbolo, para que sirve [& Chr(11)] aparece en cada
frase, lo he quitado y no aparece el simbolo, hago bien en quitarlo?
Gracias otra vez.



"jose" <carpinjose @ gmail.com> escribió en el mensaje
news:%UWwe.1752790$

"KL" escribió en el mensaje
news:%
Hola Jose,

Ahora si, veo que te habia entendido bien :-) Es que "el macro que
pinchas" es el que debes modificar de la misma manera que you he
modificado el macro de mi ejemplo.

Saludos,
KL


"jose" <carpinjose @ gmail.com> wrote in message
news:6ZEwe.1735810$
Hola KL, por lo visto no me he explicado bien, yo no tengo ningún codigo
que cree este mensaje, lo uqe me pasa es qeu si yo pincho en una macro
cuando no he pagadado nada en el portapapeles Excel me da un mensaje de
error, ese mensaje es el qeu quiero modificar, o a una mala si no se
puede modificar dicho mensaje, que me salga uno que cree yo.
Para que me entidas mejor, sobre el archivo qeu te he mandado si no le
doy bien al boton Ir no copia las dos celdas que tendria que copiar en
el protapapeles para luego poder pegarlas con el boton Act. y al pulsar
el boton Act. me sale el error 1004.

"KL" escribió en el mensaje
news:%
Hola jose,

Supongamos que tienes el siguiente codigo (por cierto no pones tu
codigo que da error):

Sub Test()
Selection.PasteSpecial xlPasteValues
End Sub

Si crees que el unico error que se puede producir (o el unico que
quieres manejar) es el 1004 podrias hacer lo siguiente:

Sub Test()
Dim msg As String
On Error Resume Next
Selection.PasteSpecial xlPasteValues
If Err.Number = 1004 Then
msg = msg & "El portapapeles esta vacio," & Chr(11)
msg = msg & "es decir, no hay datos que pegar." & Chr(11)
msg = msg & "Seleccione un rango y pulse Ctrl+C" & Chr(11)
msg = msg & "antes de pulsar este boton." & Chr(11)
MsgBox msg, vbOKOnly + vbExclamation, _
"Mensaje de parte de Jose"
Exit Sub
End If
'tu codigo sigue aqui
End Sub


Saludos,
KL


"jose" <carpinjose @ gmail.com> wrote in message
news:QlEwe.1734358$
Hola,
quiero crear un mensaje al recibir un mensaje de error o cambiar el
texto del mensaje de error, als dos cosas me sirven. El caso es que
tengo unas macros en unos botones que hay veces qeu no funcionan bien
y me dá el error 1004, el mensaje dice asi:
Se ha producido el eror '1004' en tiempo de ejecucion:
erroe en el metodo PasteSpecial de la clase Range

eso es porque la macro lo que hace es pegar informacion en unas celas
pero el error viene porque no he copiado nada al portapapeles, lo que
quiero es que cada vez que me salga este error, automaticamente me
sale otro mensaje con las instrucciones que yo el ponga.
Fernando Arroyo me puso este codigo, pero con este codigo lo que me
hace es crear un mensaje que yo puda personalizar, ahora digo yo como
hago para que este mensaje me salga a la vez que el error? iagual es
que tengo que poner este codigo en algun otro sitio que no sea en un
modulo?
El codigo es este:

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



















Respuesta Responder a este mensaje
#7 KL
30/06/2005 - 21:17 | Informe spam
Mea culpa! Deberia ser Chr(13) es para introducir alto de linea.

Saludos,
KL

"jose" <carpinjose @ gmail.com> wrote in message
news:55Xwe.1752980$
Hola, ya he creado el mensaje, me funciona bien pero al final de cada
frase me aparece aparece un simbolo, para que sirve [& Chr(11)] aparece en
cada frase, lo he quitado y no aparece el simbolo, hago bien en quitarlo?
Gracias otra vez.



"jose" <carpinjose @ gmail.com> escribió en el mensaje
news:%UWwe.1752790$

"KL" escribió en el mensaje
news:%
Hola Jose,

Ahora si, veo que te habia entendido bien :-) Es que "el macro que
pinchas" es el que debes modificar de la misma manera que you he
modificado el macro de mi ejemplo.

Saludos,
KL


"jose" <carpinjose @ gmail.com> wrote in message
news:6ZEwe.1735810$
Hola KL, por lo visto no me he explicado bien, yo no tengo ningún
codigo que cree este mensaje, lo uqe me pasa es qeu si yo pincho en una
macro cuando no he pagadado nada en el portapapeles Excel me da un
mensaje de error, ese mensaje es el qeu quiero modificar, o a una mala
si no se puede modificar dicho mensaje, que me salga uno que cree yo.
Para que me entidas mejor, sobre el archivo qeu te he mandado si no le
doy bien al boton Ir no copia las dos celdas que tendria que copiar en
el protapapeles para luego poder pegarlas con el boton Act. y al pulsar
el boton Act. me sale el error 1004.

"KL" escribió en el mensaje
news:%
Hola jose,

Supongamos que tienes el siguiente codigo (por cierto no pones tu
codigo que da error):

Sub Test()
Selection.PasteSpecial xlPasteValues
End Sub

Si crees que el unico error que se puede producir (o el unico que
quieres manejar) es el 1004 podrias hacer lo siguiente:

Sub Test()
Dim msg As String
On Error Resume Next
Selection.PasteSpecial xlPasteValues
If Err.Number = 1004 Then
msg = msg & "El portapapeles esta vacio," & Chr(11)
msg = msg & "es decir, no hay datos que pegar." & Chr(11)
msg = msg & "Seleccione un rango y pulse Ctrl+C" & Chr(11)
msg = msg & "antes de pulsar este boton." & Chr(11)
MsgBox msg, vbOKOnly + vbExclamation, _
"Mensaje de parte de Jose"
Exit Sub
End If
'tu codigo sigue aqui
End Sub


Saludos,
KL


"jose" <carpinjose @ gmail.com> wrote in message
news:QlEwe.1734358$
Hola,
quiero crear un mensaje al recibir un mensaje de error o cambiar el
texto del mensaje de error, als dos cosas me sirven. El caso es que
tengo unas macros en unos botones que hay veces qeu no funcionan bien
y me dá el error 1004, el mensaje dice asi:
Se ha producido el eror '1004' en tiempo de ejecucion:
erroe en el metodo PasteSpecial de la clase Range

eso es porque la macro lo que hace es pegar informacion en unas celas
pero el error viene porque no he copiado nada al portapapeles, lo que
quiero es que cada vez que me salga este error, automaticamente me
sale otro mensaje con las instrucciones que yo el ponga.
Fernando Arroyo me puso este codigo, pero con este codigo lo que me
hace es crear un mensaje que yo puda personalizar, ahora digo yo como
hago para que este mensaje me salga a la vez que el error? iagual es
que tengo que poner este codigo en algun otro sitio que no sea en un
modulo?
El codigo es este:

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























email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida