Personnaliser message erreur "type mismatch"

ghost974

XLDnaute Nouveau
Salut, encore moi, avec encore des soucis pour une macro

J'ai une macro qui permet de générer un .csv à partir d'un tableau.
Le problème c'est que pour certaine cellule, j'ai la valeur #VALUE! car j'ai un traitement qui ne fonctionne pas toujours.

Donc j'ai un message Runtime error 13 type mismatch qui me revoie dans MS VB. J'aimerais personnaliser le message d'erreur qui m'indiquerai la ou les cellules qui posent problème.

Merci d'avance pour votre aide.
 

Catrice

XLDnaute Barbatruc
Re : Personnaliser message erreur "type mismatch"

Bonsoir,

Essaye le code suivant :

Sub test()
On Error Resume Next
MsgBox "toto" * 10 'Simule une erreur
If Err = 13 Then MsgBox "Message à afficher en cas d'erreur ;-)"
End Sub

Il simule une erreur et propose un autre message.

Je crois que On Error peut te permettre de faire ce que tu veux.
Elle est documentée dans l'aide
 

ghost974

XLDnaute Nouveau
Re : Personnaliser message erreur "type mismatch"

Sub test()
On Error Resume Next
Dim plage As Range, Lign As Variant, Cel As Range, VCel As String
Set plage = ActiveSheet.Range(UserForm1.RefEdit1.Value & ":" & UserForm1.RefEdit2.Value)
Open ThisWorkbook.Path & "/" & ActiveSheet.Name & ".csv" For Output As #1
For Each Lign In plage.Rows
VCel = ""
For Each Cel In Lign.Cells
If Err = "13" Then MsgBox ("Erreur 13: Le type de format de la cellule " & ?????? & plage.Row & "est incorrect")
VCel = VCel & Cel.Value & ";"
Next
Print #1, VCel
Next
Close #1
End Sub

Je n'arrive pas à récupérer la colonne où se trouve le problème :(
 
Dernière édition:

Discussions similaires

Réponses
14
Affichages
902

Membres actuellement en ligne

Statistiques des forums

Discussions
312 493
Messages
2 088 957
Membres
103 990
dernier inscrit
lamiadebz