boucler si valeur imputbox est vide

djkrom2003

XLDnaute Nouveau
Bonjour je me prends la tete à essayer de trouver une façon de boucler sur l'imputbox tant qu'une valeur n'est pas renseignée, voici le code que j'ai fait :

Code:
Sub client()

Dim client, Departement, i, Hauteur
Dim estPresent As Boolean

With Sheets("base client")
    client = ActiveCell
    
    ' Hauteur correspond au nombre d'éléments sur la page "base client"
    Hauteur = .Range("c2").CurrentRegion.Rows.Count
    
    i = 1
    estPresent = False
    ' On recherche tant qu'on n'a pas trouvé et tant qu'on n'est pas à la fin
    While Not estPresent And i <= Hauteur
        If .Cells(i + 1, 3) = client Then
            ' On a trouvé
            estPresent = True
        End If
        
        ' On passe à la ligne suivante
        i = i + 1
    Wend
    
    If Not estPresent Then
        ' On est dans le cas où la recherche a été infructueuse, et on demande d'ajouter le client
        Departement = InputBox("Client manquant, entrez un département")
                
        .Range("c" & Hauteur + 1).Value = client
        .Range("i" & Hauteur + 1).Value = Departement
    End If
   
    
End With
End Sub

j'aimerais le placer ici :

Code:
 If Not estPresent Then
        ' On est dans le cas où la recherche a été infructueuse, et on demande d'ajouter le client
        Departement = InputBox("Client manquant, entrez un département")
                
        .Range("c" & Hauteur + 1).Value = client
        .Range("i" & Hauteur + 1).Value = Departement
    End If
 

JNP

XLDnaute Barbatruc
Re : boucler si valeur imputbox est vide

Bonjour Djkrom2003 :),
A tester
Code:
Sub Client()
Dim Cellule As Range, Departement As Double, Hauteur As Long
With Sheets("base client")
Hauteur = .Range("c35000").End(xlUp).Row
Set Cellule = .Range("c" & Hauteur).Find(ActiveCell, lookat:=xlWhole)
If Cellule Is Nothing Then
Recommence:
Departement = Application.InputBox("Client manquant, entrez un département", , , , , , , 1)
If Departement = 0 Or Int(Departement) <> Departement Or Departement > 96 Then GoTo Recommence
.Range("c" & Hauteur + 1).Value = ActiveCell
.Range("i" & Hauteur + 1).Value = Departement
End If
End With
End Sub
Si tu as des clients DOM TOM ou Corses, il faudra revoir le test :p...
Bonne suite :cool:
 

djkrom2003

XLDnaute Nouveau
Re : boucler si valeur imputbox est vide

Capture.jpg

bonjour et merci pour votre réponse qui fonctionne,oui, j'ai des clients internationaux, cependant les departements saisies ne peuvent etre différents d'un liste existante et lorsque je valide sans saisir de données, voici ce que j'obtiens, voir image ci jointe.
 

Pièces jointes

  • Capture.jpg
    Capture.jpg
    24.5 KB · Affichages: 37
  • Capture.jpg
    Capture.jpg
    24.5 KB · Affichages: 48

Discussions similaires

Réponses
6
Affichages
297

Statistiques des forums

Discussions
312 545
Messages
2 089 465
Membres
104 173
dernier inscrit
RavraX