Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Utilisation des Messages d'Erreur?

  • Initiateur de la discussion Initiateur de la discussion YANN-56
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

YANN-56

XLDnaute Barbatruc
Bonsoir ou Bonjour, suivant l'heure à ceux qui passeront par là.

Je ne parviens pas à gérer les messages d'erreurs.
Il est vrai qu'en VBA, je balbutie encore beaucoup!

Je joins deux Fichiers à mettre impérativement dans un même répertoire.

Le Classeur "MOTEUR" va chercher dans le Classeur "TARIF" un Prix suivant
la saisie dans les TextBoxes "LARGEUR et HAUTEUR"
(Ne pas se préoccuper des manœuvres ni des coffres)

Le souci est qu'au-delà de la plage Largeur/Hauteur du Classeur "TARIF" => Plouff

C'est pour cela que je cherche à trouver comment faire pour avoir
un Message d'erreur, point par point, et cesser la procédure avant le Plantage; si l'utilisateur entre une dimension erronée.

Merci d'avance pour m'avoir évité, si vous m'aidez,
de m'ajouter nombre de cernes et enlever poignées à la tignasse.

Yann
 

Pièces jointes

Re : Utilisation des Messages d'Erreur?

Bonsoir Yann,

Voici comment tu peux modifier ton code pour gérer les hauteurs et largeurs inconnues dans ta base :
Code:
Private Sub CommandButton1_Click()
    ThisWorkbook.FollowHyperlink ActiveWorkbook.Path & "\" & "TARIF.xls"
    For i = 1 To Sheets.Count
        If Sheets(i).Cells(1, 4).Value = TABLIER Then
            Sheets(i).Activate
            Dim LARGEUR As Integer
            Dim HAUTEUR As Integer
            For Each L In ActiveSheet.Range(Cells(17, 2), Cells(17, 30))
                If L.Value = UserForm1.TextBox1.Text Then LARGEUR = L.Column
            Next
            For Each H In ActiveSheet.Range(Cells(18, 1), Cells(50, 1))
                If H.Value = UserForm1.TextBox2.Text Then HAUTEUR = H.Row
            Next
[COLOR=red]            If HAUTEUR = 0 Then[/COLOR]
[COLOR=red]                MsgBox ("Hauteur saisie incorrecte. Veuillez recommencer.")[/COLOR]
[COLOR=red]            ElseIf LARGEUR = 0 Then[/COLOR]
[COLOR=red]                MsgBox ("Largeur saisie incorrecte. Veuillez recommencer.")[/COLOR]
[COLOR=red]            Else[/COLOR]
[COLOR=red]                UserForm1.Label1.Caption = Round(ActiveSheet.Cells(HAUTEUR, LARGEUR).Value, 2)[/COLOR]
[COLOR=red]            End If[/COLOR]
        End If
    Next
    ActiveWorkbook.Save
    ActiveWorkbook.Close
End Sub

A+
 
Re : Utilisation des Messages d'Erreur?

A Fred0o

Quant à comprendre les réponses: La tienne; je l'ai fait!
En plus avec un " ElseIf" que je n'ai jamais osé utiliser…! 😕
Superbe!!!

Sincère Merci. C'est vraiment gentil de ta part.

Qu'il est bon au bord de l'abandon de rencontrer ainsi de l'aide.🙂

Bonne fin de semaine à toi et à tous.

Yann
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…