Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Boucle avec deux conditions

phileas

XLDnaute Nouveau
Bonjour, à tous

Je souhaiterais simplifier mon code en faisant une boucle for/next avec deux conditions sur les lignes ci dessous,mais je cale!!

Label1.Caption = Sheets("data").Range("a1").Text
Label2.Caption = Sheets("data").Range("b1").Text
Label3.Caption = Sheets("data").Range("c1").Text
......


je pensais faire un code du style mais ça fonctionne pas..

c = Sheets("data").Range("a1").End(xlRight).Column
For b = 1 To 3
Controls("label" & b).Caption = Sheets("data").Range(c & "1").Text
Next b

merci d'avance
Phil
 

CHALET53

XLDnaute Barbatruc
Bonjour,

Une petite correction également pour la recherche de c :

Sub userform_initialize()
c = Sheets("data").Range("a1").End(xlToRight).Column
For b = 1 To c
Controls("Label" & b).Caption = Cells(1, b)
Next b
End Sub

a+
 

phileas

XLDnaute Nouveau
Bonjour et merci a tous les deux

Je l'ai adapté pour des combobox et ça fonctionne bien
c = Sheets("data").Range("a1").End(xlToRight).Column
For b = 8 To 37
Sheets("data").Cells(1, b).Value = Controls("combobox" & b).Text
Next b

Mon problème est que j'ai deux séries de combobox des no 8 a 37 et 108 a 137, quand je veux adapter ce code a la la deuxième série ça ne fonctionne pas !!!

c = Sheets("data").Range("a2").End(xlToRight).Column
For b = 108 To 137
Sheets("data").Cells(2, b).Value = Controls("combobox" & b).Text
Next b

Phil
 

phileas

XLDnaute Nouveau
Bonjour,

Tu as raison la formule qui calcule c n'a rien a faire dans mon exemple !! désolé
voici un fichier qui permettra peut être de comprendre ma problématique.

J'ai essayé avec des combobox qui se suivent et ça fonctionne donc mon probleme vient du fait qu'il y a des trous entre les no de combobox; existe t'il une autre solution que de devoir remplacer tous mes no de combos?

Pour info, dans ce fichier je voudrais avoir dans les combobox 101 a 104 les infos de la ligne e5 à h5

Merci d'avance
 

Pièces jointes

  • pour envoi au forum.xlsm
    21.4 KB · Affichages: 39

CHALET53

XLDnaute Barbatruc
Re,

For c = 101 To 104
Sheets("Feuil1").Cells(5, c).Value = Controls("combobox" & c).Text
Next c

Cela fonctionne mais écrit le résultat sur la ligne 5 et dans les colonnes 101(CW) à 104
tu veux quoi ?

a+
 

Discussions similaires

Réponses
3
Affichages
359
Réponses
11
Affichages
930
Réponses
2
Affichages
577
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…