A voir également:
- Visual sous excell
- Visual click avis ✓ - Forum Consommation et internet
- Visual basic download - Télécharger - Langages
- Visual paradigm - Télécharger - Gestion de données
- Microsoft visual c++ c'est quoi - Forum Windows
- Formule excell - Guide
2 réponses
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 197
5 nov. 2009 à 09:31
5 nov. 2009 à 09:31
Bonjour,
Tu peux utiliser une boucle While ...Wend ou Do While :
;o)
Tu peux utiliser une boucle While ...Wend ou Do While :
Dim Lig As Long
Lig = 2
While Range("A") & lig).Value <> ""
'Ici le code à excécuter tant que la cellule n'est pas vide
'Dès qu'on trouve une cellule vide on sort de la boucle
Lig = Lig + 1
Wend
'Ici le code à exécuter après la première cellule vide
;o)
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 197
6 nov. 2009 à 12:00
6 nov. 2009 à 12:00
Bonjour,
Pour le problème de "a", ça vient de là : Range("a2").Select
Pour avoir la dernière valeur valide, il faut faire comme ça :
Pour la 2ème question, je ne comprends pas ce que tu cherches à faire.
;o)
Pour le problème de "a", ça vient de là : Range("a2").Select
Pour avoir la dernière valeur valide, il faut faire comme ça :
Dim lig As Long
lig = 2
While Range("a" & lig).Value <> ""
a = Range("a" & lig).Value
lig = lig + 1
Wend
Label1.Caption = a
Label2.Caption = b
Label3.Caption = c
End Sub
Pour la 2ème question, je ne comprends pas ce que tu cherches à faire.
;o)
pour la deuxieme question : c'est simple je cherche à rechercher dans une colonne des valeurs qui iront remplir des labels d'une boite de dialogue dés que celle ci s'ouvrira, sachant que ces valeurs peuvent avoir changé depuis la dernière ouverture.
En fait je résume j'ai une boite de dialogue avec plusieurs label et je veux qu'à chaque fois que j'ouvre cette boite de dialogue il remplisse ces différent label par les valeurs de la dite colonne par contre il se peux qu'il n'y ai pas toujours le même nombre de valeur à remplir (d'où la boucle)
je veux donc qu'il remplisse le label 1 avec la premiere cellule si non vide
qu'il remplisse le label 2 avec la deuxième cellule si non vide etc et si il trouve 5 valeurs alors qu'il y ai 6 labels ce n'est pas grave il laissera celui non remplit
j'espère que j'ai été assez clair
merci encore
daniel
En fait je résume j'ai une boite de dialogue avec plusieurs label et je veux qu'à chaque fois que j'ouvre cette boite de dialogue il remplisse ces différent label par les valeurs de la dite colonne par contre il se peux qu'il n'y ai pas toujours le même nombre de valeur à remplir (d'où la boucle)
je veux donc qu'il remplisse le label 1 avec la premiere cellule si non vide
qu'il remplisse le label 2 avec la deuxième cellule si non vide etc et si il trouve 5 valeurs alors qu'il y ai 6 labels ce n'est pas grave il laissera celui non remplit
j'espère que j'ai été assez clair
merci encore
daniel
6 nov. 2009 à 10:04
De plus dans mon projet non seulement il faudrait récupérer le contenu des différentes cellules non vide mais les nommer avec des noms différents afin de pouvoir les copiers dans differents labels d'une boite de dialogue.
Voici ce que j'ai fait grâce a vos conseil mais qui ne me satisfait qu'en partie
Private Sub CommandButton1_Click()
Dim lig As Long
lig = 2
Range("a2").Select
While Range("a" & lig).Value <> ""
a = ActiveCell.Value
lig = lig + 1
Wend
Label1.Caption = a
Label2.Caption = b
Label3.Caption = c
End Sub
je vous remercie par avance de vos conseils avisés
daniel
6 nov. 2009 à 10:21
Merci, cela à l'air de marcher le programme descend bien de ligne en ligne tant que le contenu de la cellule n'est pas vide et sort de cette procédure dés qu'il en rencontre une, par contre ce que je m'explique pas c'est qu'il garde pour a toujours la même valeur qui est contenu dans la première cellule rencontrée et ne change pas en fonction des différents contenu de cellules rencontrées.
De plus dans mon projet non seulement il faudrait récupérer le contenu des différentes cellules non vide mais les nommer avec des noms différents afin de pouvoir les copiers dans differents labels d'une boite de dialogue.
Voici ce que j'ai fait grâce a vos conseil mais qui ne me satisfait qu'en partie
Private Sub CommandButton1_Click()
Dim lig As Long
lig = 2
Range("a2").Select
While Range("a" & lig).Value <> ""
a = ActiveCell.Value
lig = lig + 1
Wend
Label1.Caption = a
Label2.Caption = b
Label3.Caption = c
End Sub
je vous remercie par avance de vos conseils avisés
daniel