Boite de dialogue

Bonjour a tous

si le résultat de B8 FEUIL 1et dans colonne D liste

on enregistre ca ok

si la frappe B8 FEUIL nouvelle réf n'est pas dans colonne D feuil liste

un message apparait

on créer ou pas la je bloque comment faire apparaitre cette boite de dialogue

je choisi créer

on enregistre B8 FEUIL nouvelle réf en colonne A feuil liste ca ok

je choisi PAS

le curseur va en B8 automatiquement ca ok

je joins un fichier plus explicite

4essai1.xlsm (102.83 Ko)

merci d'avoir pris du temps pour me lire

aiglon74

Bonjour toutes et tous

à peu près compris le concept du déroulement, alors, B8 en format texte et non en standard

j'ai testé @voir ci-joint

ce que j'ai compris si je note en B8 un mot/chiffres inexistant, un message apparaît (msgbox) pour signaler : Non trouvé ! puis, lors du clic sur ok, le formatage de la cellule B8

si trouvé, tout se déroule normalement

note1: pourquoi dans la colonne A et non la D sur le code ( dans la Feuil2 onglet 'Nouvelle ref ') ?

note2: pour la cellule B8 format 'Texte' onglet nouvelle ref

note3: ce n'est pas plutôt la recherche sur l'onglet BASE colonne C ? rectifié colonne D

@tester

crdlt,

André

Bonsoir Andre13

je viens de tester

je n'est pas de boite de dialogue (oui non)

si je tape R11T21 qui N'existe pas en feuil liste colonne E (ERREUR de ma par E pas D)

aiglon74

Re, bonjour toutes et tous

essai test B classeur ci-joint

peut-être comme ceci :

Private Sub Worksheet_Change(ByVal Target As Range)
'aiglon74
Application.EnableEvents = False 'force la majuscule
    If Not Intersect(Target, Range("B8,D8,F8,H8,J8,L8,N8,P8")) Is Nothing Then
        If Range("B8,D8,F8,H8,J8,L8,N8,P8") <> "" Then Target = UCase(Target)
    End If
Application.EnableEvents = True
Dim cel As Range 'non trouvé en feuille "liste"
  If Target.Address = "$B$8" Then
    If Target = "" Then
    ElseIf MsgBox("Etes-vous certain(e) de vouloir continuer ?", vbYesNo, "Demande de confirmation") = vbYes Then

     With Sheets("Liste")

      Set cel = .Columns("E").Find(what:=Target, LookIn:=xlValues, lookat:=xlWhole) 'ici <===
       If Not cel Is Nothing Then
        cel.Offset(0, 1).ClearContents
      Else
        MsgBox Target & " Non trouvé"
        Range("B8").ClearContents
        End If
      End With
  End If
  End If
End Sub

 Private Sub Worksheet_Activate()
 On Error Resume Next
Range("B8").Select
End Sub
  

crdlt,

André

1essai1.zip (319.18 Ko)

bonsoir

je reformule ma demande

voir le fichier

en tout cas merci

aiglon74

Bonjour

je reviens vers

je n'arrive pas a automatisé

Private Sub Worksheet_Change(ByVal Target As Range) feuil2

j'ai une boite de dialogue oui non

quand je clique sur oui je voudrais déclencher une macro Sub copycolle() automatiquement

pour le moment en appuyant sur le bouton bleu sa fonctionne voir fichier

merci par avance

aiglon74

1essai11.zip (325.38 Ko)
Rechercher des sujets similaires à "boite dialogue"