Message d'alerte avec VBA
Résolu/Fermé
Hamster18
Messages postés
176
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
22 janvier 2024
-
26 janv. 2023 à 12:51
Hamster18 Messages postés 176 Date d'inscription mercredi 2 janvier 2019 Statut Membre Dernière intervention 22 janvier 2024 - 28 janv. 2023 à 12:00
Hamster18 Messages postés 176 Date d'inscription mercredi 2 janvier 2019 Statut Membre Dernière intervention 22 janvier 2024 - 28 janv. 2023 à 12:00
A voir également:
- Message d'alerte avec VBA
- Message - Guide
- Recuperer message whatsapp supprimé - Guide
- Voici l'astuce ultime pour savoir si un contact vous a bloqué dans WhatsApp - Accueil - Messagerie instantanée
- Message d'absence thunderbird - Guide
- Fausse alerte mcafee - Accueil - Piratage
2 réponses
T3chN0g3n
Messages postés
5206
Date d'inscription
samedi 16 février 2019
Statut
Membre
Dernière intervention
18 avril 2025
1 166
26 janv. 2023 à 15:54
26 janv. 2023 à 15:54
Bonjour,
Tu peut utiliser les msgbox:
https://learn.microsoft.com/fr-fr/office/vba/language/reference/user-interface-help/msgbox-function
Cdlt.
Hamster18
Messages postés
176
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
22 janvier 2024
26 janv. 2023 à 19:26
26 janv. 2023 à 19:26
Bonsoir,
Merci ça m'as bien aider !
Maintenant je créer une msgbox et j'ai utilise un trigger pour l’afficher lors de chaque calcul sur la feuille.
J'aimerais maintenant que la msgbox s'affiche seulement quand la moyenne n'est pas compris dans le bon intervalle ...
Voici ou j'en suis dans le code :
Private Sub Worksheet_Calculate()
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "Do you want to continue ?" ' Define message.
Style = vbYesNo Or vbCritical Or vbDefaultButton2 ' Define buttons.
Title = "MsgBox Demonstration" ' Define title.
Help = "DEMO.HLP" ' Define Help file.
Ctxt = 1000 ' Define topic context.
' Display message.
Response = MsgBox(Msg, Style, Title, Help, Ctxt)
If Response = vbYes Then ' User chose Yes.
MyString = "Yes" ' Perform some action.
Else ' User chose No.
MyString = "No" ' Perform some action.
End If
End Sub
Merci d'avance pour votre aide.
Cordialement.
Hamster18
Messages postés
176
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
22 janvier 2024
28 janv. 2023 à 12:00
28 janv. 2023 à 12:00
Ma solution si ça peut aider quelqu'un un jour
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Dim iRow As Single
Dim nb, i As Integer
nb = 0 'compteur du nombre de valeur remplie dans la colonne
Set KeyCells = Range("E15:ZZ19") 'champs de saisie des valeurs
If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then 'permet de connaitre la cellule qui vient d'être modifié dans le champs de saisie des valeurs
If IsNumeric(Cells(20, Range(Target.Address).Column).Value) = True Then 'vérifie que la cellule moyenne n'est pas une erreur
For i = 1 To 5 'Boucle pour connaitre le nombre de valeur saisie dans la colonne
If IsEmpty(Cells(14 + i, Range(Target.Address).Column)) = False Then
nb = nb + 1
End If
Next
If nb > 4 Then 'Si 5 valeurs ont été saisie dans la colonne
If Cells(20, Range(Target.Address).Column).Value < Range("G7").Value Or Cells(20, Range(Target.Address).Column).Value > Range("G6").Value Then 'Si la moyenne n'est pas dans le bon interval
message Range(Target.Address), "MOYENNE NON-CONFORME" 'message d'alerte
End If
If Cells(21, Range(Target.Address).Column).Value > Range("G4") Then 'si l'étendu n'est pas dans le bon interval
message Range(Target.Address), "ETENDU NON-CONFORME" 'message d'alerte
End If
End If
End If
Exit Sub
End If
End Sub
Sub message(adresse, titre)
Msg = "1. Vérifier la saisie" & Chr(13) & Chr(10) & "2. Refaire une mesure" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Si votre valeur est toujours non-conforme suivre les instrustions du document " & Worksheets("Identité").Range("C21").Value & " (mode opératoire de réaction face au défaut) " & Chr(13) & Chr(10) & Chr(13) & Chr(10) & " Voulez-vous continuer ? " ' Define message.
Style = vbYesNo Or vbExclamation Or vbDefaultButton2 ' Define buttons.
title = titre ' Define title.
Help = "DEMO.HLP" ' Define Help file.
Ctxt = 1000 ' Define topic context.
Response = MsgBox(Msg, Style, title, Help, Ctxt) ' Display message.
If Response = vbYes Then ' User chose Yes.
Exit Sub
Else ' User chose No.
adresse.Value = "" ' Perform some action.
Exit Sub
End If
End Sub