Problème VBA

Je pense avoir un Problème de synthaxe dans ma procédure

Je veux chercher le prénom et le nom d'un client dans la table client le nom se trouvant dans la 2ème colonne et le prenom dans la 3ème, de plus le nombre de client commence a 101

Sub PrenomEtNom()

Dim CodeClientAChercher As Single

Dim NomPrénom As Single

Dim i As Integer

Dim compteur As Integer

MsgBox ("Saisir un code Client")

InputBox CodeClientAChercher

Do While CodeClientAChercher <> Sheets("Clients").Cells(i, 1) <> ""

Sheets("Clients").Cells(i, 1) = ""

compteur = 101

i = i + 1

Loop

If CodeClientAChercher = Sheets("Clients").Cells(i, 1) Then

NomPrénom = Sheets("Clients").Cells(i, 2) & NomPrénom = Sheets("Clients").Cells(i, 3)

Else:

NomPrénom = "Client inconnu"

End If

MsgBox ("NomPrénom")

End Sub

Est ce que qqun pourrait m'éclairer

merci d'avance

Bonjour,

Le problème est dans ta boucle. Tu ne peux avoir trois comparaison dans ta boucle

Do While CodeClientAChercher <> Sheets("Clients").Cells(i, 1) <> ""

ensuite je ne comprend pas l'utilité de ces deux lignes:

Sheets("Clients").Cells(i, 1) = ""
compteur = 101

tu pourrais faire un code du genre:

Dim ZoneRecherche As Range

Set ZoneRecherche = ActiveSheet.UsedRange

dim NomPrenom as string
NomPrenom = "Client Inconnue"

For Each Cellule In ZoneTri.Columns(1).Rows
        if Cellule.value = CodeClientAChercher then
             NomPrenom = cellule.offset(0,1).value & ", " & cellule.offset(0,2).value
             exit for
        end if
Next Cellule

msgbox NomPrenom
4bon-v3.xlsm (42.87 Ko)

Merci d'avoir repondu

Le problème est dans ta boucle. Tu ne peux avoir trois comparaison dans ta boucle

Code: Tout sélectionner

Do While CodeClientAChercher <> Sheets("Clients").Cells(i, 1) <> ""

Enfait c'est tant que le code client n'est pas celui rechercher et tant que la liste n'est pas vide, pke si le code client n'est pas référencé alors il faudrait mettre client inconnu

Et les 2 lignes en effet ne serve a rien

dans ce cas tu devrais dire

Do While CodeClientAChercher <> Sheets("Clients").Cells(i, 1) and Sheets("Clients").Cells(i, 1) <> ""

est-ce que c'est à ce niveau que ton code bloquais?

oui à ce niveau je teste

merci

-- Lun Jan 11, 2010 10:12 pm --

le do while ne fonction tjs pas

Rechercher des sujets similaires à "probleme vba"