Créer un message Pop Up

Bonjour,

J'aimerai créer un code qui permet d'envoyer un message pop up sur ma feuille de travail excel lorsque les cellules d'une colonne donnée (ici B) sont remplies.

Le message pop up serait quelque chose comme "Merci de remplir les cellules de la colonne C et D"

Voici mon code pour le moment :

Sub Test()

Dim TargetColumn
Dim TargetText

If TargetColumn = Worksheets("Feuil1").Range("$B$:$B$") Then
    If TargetText <> vbNullString Then
        MsgBox "Ceci est un message"
    End If
End If
End Sub

Merci beaucoup pour votre retour

Bonjour, il vaudrait mieux un fichier exemple que l'on puisse voir le besoin.

Dans votre code vous testez la colonne B entière. je doute que votre fichier utilise toutes les lignes possibles d'excel ?

et dans ce cas puisqu'il y aura des vides aucun message.

Bonjour Uwu,

En mettant ceci dans la feuille en question

Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect(Range("B:B"), Target) Is Nothing Then
    If Target.value <>"" then
      MsgBoxTimer "Merci de remplir les cellules de la colonne C et D...", vbInformation, "ATTENTION !", 2, True
    End If
  End If
End Sub

Et cette fonction dans un module

' Fonction de Laurent_ott
Function MsgBoxTimer(Message As String, Boutons As VbMsgBoxStyle, Titre As String, _
  DuréeAffichage As Byte, Optional BloqueAction As Boolean = False) As VbMsgBoxResult
  '-------------------------------------------------------------------------------
  ' Affiche une boite de message comme MsgBox, mais avec une durée d'affichage maximale
  ' qui peut être déterminée.
  '-------------------------------------------------------------------------------
  ' Message : Message à afficher comme pour la fonction MsgBox.
  ' Boutons : Les mêmes boutons que pour la fonction MsgBox.
  ' Titre : Le titre de la boite comme pour la fonction MsgBox.
  ' Durée : Durée en seconde d'affichage de la boite. Sauf si un choix est fait par l'utilisateur.
  ' BloqueAction : Si True alors bloque le clavier et la souris (mais ça marche pas).
  ' Retourne : -1 si pas de choix, ou une constante VbMsgBoxResult comme pour MsgBox.
  '-------------------------------------------------------------------------------
  Dim InfoBox As Object
  Set InfoBox = CreateObject("WScript.Shell")
  MsgBoxTimer = InfoBox.PopUp(Message, DuréeAffichage, Titre, Boutons)
End Function

A tester

Merci beaucoup ! Je débute mais je comprends bien les fonctionnements et la logique

Rechercher des sujets similaires à "creer message pop"