Affichage de n variables dans une MsgBox

Résolu
fikriiii Messages postés 27 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 11 mai 2007 - 19 avril 2007 à 08:23
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 - 19 avril 2007 à 10:12
Bonjour,

Comment afficher n variables via une msgbox sous VBA.
Les variables en question sont les numéros de ligne des cellules vides dans une colonne quelconque.
n étant limité, car il y a une autre condition qui évite d'avoir un grand nombre de variables.
Cette condition étant: afficher ces numéros de ligne de cellules vides de la colonne F, par exemple, à condition que sur la même ligne, la cellule de la colonne X soit remplie.

Voilà voilà, j'espère avoir été clair...ceux qui ne sont pas de cet avis, là chui désolé mais je peux plus rien pour eux.

11 réponses

drikce06 Messages postés 2237 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 11
19 avril 2007 à 09:22
V1 & "-" & V2 & "-" & V3 & "-" & V4

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
3
jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
19 avril 2007 à 08:29
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 131
19 avril 2007 à 08:29
Il me semble qu'on t'avais répondu non ?

Il te faut concaténer dans une chaîne de caractère toutes tes variables, par exemple :

MsgBox variable1 & " " & variable2 & " " & variable3 'etc.

Bien sûr, le mieux c'est de mettre tes variables dans un tableau, et ainsi faire la concaténation avec une boucle :

Dim s as string
For i = 0 to UBound(tonTableau)

    s = s & tonTableau(i)

next i
MsgBox s
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
19 avril 2007 à 09:00
Bonjour,

tu es clair dans ton explication mais tu n'es pas du tout en phase avec ton pb. Il est clair que c'est pas la concatenation de variable qui te pose probleme car sinon tu serais deja passé a autre chose (etant donné le nombre de reponse valable que tu as recu a ce sujet). De plus, c'est pas le msgbox qui aurait posé probleme mais simplement une manipulation de chaine de caractetes. Le msgbox n'affiche qu'une chaine. C'est pas un datareport non plus.

Ce que tu cherches avant tout, c'est un code qui te permet de localiser les lignes vides de la colonne F dont la colonne X est remplie. C'est tout. Le reste c'est de la manipulation de chaine avec &.

Donc je pense que si quelqu'un connais VBA excel, c'est vers cela qu'il faut s'orienter. Bien sur, si je me trompe, fais le moi savoir.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fikriiii Messages postés 27 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 11 mai 2007
19 avril 2007 à 09:16
si avec la concaténation, je ne sais pas comment afficher mes différentes variables séparés par des "-"?
0
drikce06 Messages postés 2237 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 11
19 avril 2007 à 09:20
Private Sub CommandButton1_Click()
Dim I As Integer
Dim NbLigne As Integer
Dim Toto As String


Toto = ""
NbLigne = 13 'pour l'exemple


For I = 1 To NbLigne


If Cells(I, 6) = "" And Cells(I, 24) <> "" Then


Toto = Toto & vbCrLf & CStr(I)


End If


Next I


MsgBox (Toto)


End Sub

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
0
jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
19 avril 2007 à 09:22
ajoute le "-" dans ta concaténation !!!!
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
19 avril 2007 à 09:28
Tu vois que tu n'es pas precis puisque maintenant tu nous parle de "-".

Avec le code de drikce06, tu as tout ce qui te faut (car c'est clair, meme pour un nulosse comme moi, en VBA Excel).
0
drikce06 Messages postés 2237 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 11
19 avril 2007 à 09:33
Private Sub CommandButton1_Click()
Dim I As Integer
Dim NbLigne As Integer
Dim Toto As String


Toto = ""
NbLigne = 13 'pour l'exemple


For I = 1 To NbLigne


If Cells(I, 6) = "" And Cells(I, 24) <> "" Then


Toto = Toto & "-" & CStr(I)


End If


Next I


MsgBox (Toto)


End Sub

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
0
fikriiii Messages postés 27 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 11 mai 2007
19 avril 2007 à 09:40
Nicko11, je ne peux pas tout dire dans le moindre détail, l'objet de mon message était de connaître les commandes à utiliser pour me pencher ensuite sur le code, je pense que lorsqu'on est débutant, ça peut être un moyen relativement rapide pour apprendre à faire des choses.
J'avoue cependant qu'il faut être précis dans ses explications pour éviter certaines mauvaises interprétations.
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
19 avril 2007 à 10:12
Bien sur qu'il faut essayé par soi-meme (et c'est tout a ton honneur) sauf que depuis hier, nous avons du mal a comprendre ce que tu veux réellement puisque tu ne nous orientes que petit à petit.

Je te donnes un exemple. Au debut, tu cherche a concaténer des variables. OK. Donc il est intuitif de penser que le reste (localisation des cellules vides) est deja fait. Or, cela ne semblait pas etre le cas finalement.

C'est donc en cela, que je souhaitais que tu sois précis, car dans ce cas, tu aurais eu le code de Drikce06 bien plus rapidement.

Je penses donc a present, le sujet devrait etre resolu tres prochainement.
0