Copier fond de couleur cellule vers commandbutton

Bonjour,

Je me permets de vous écrire ce petit mail afin de m'aider à résoudre mon soucis.

j'ai une feuille excel dans celle-ci, j'ai une colonne nommée produits avec sa liste

j'ai aussi un userform ou la j'ai autant de commandbutton, que de donnée dans ma colonne feuille

exemple:

j'ai dans ma feuil1 10 produits, dans mon userform automatiquement j'ai aussi 10 commandbutton.

J'arrive a encoder automatiquent les captions de mes commandbutton par rapport au nom de mes produits de ma feuille

Donc le résultat est:

en A1 produit TOTO, ma commandbutton1.caption est TOTO

en A2 produit TATA, ma commandbutton2.caption est TATA est ainsi de suite

Mon soucis est:

j'aimerais copier le fond de couleur de ma cellule vers ma commandbutton

exemple:

si en A1 j'ai une couleur bleu, j'aimerais que ma commandbutton1 soit bleu

si en A2 j'ai une couleur jaune, j'aimerais que ma commandbutton2 soit jaune

j'espère que je me suis bien exprimé sur mon problume, je vous remercie énormement de votre aide.

Bonjour et bienvenue sur le forum

Un essai à tester. Te convient-il ?

Bye !

10classeur1.xlsm (25.26 Ko)

Bonjour xFlox, gmb , le forum,

Une variante....j'ai compris la demande différemment....

13classeur1.xlsm (21.72 Ko)

nota: les boutons doivent tous avoir le même intitulé...(ici: commandbutton1, commandbutton2...)

Cordialement,

Bonjour gmb et xorsankukai,

Tous d'abord, je tiens à vous remercier du temps que vous avez passé pour ma question. Merci

J'ai consulté vos réponses et les deux me seront utile.

J'aurais une petite question en plus pour xorsankukai.

Ma question est:

j'ai rajouté une colonne est-ce possible de faire la même chose pour celle-ci (j'ai dupliqué ton compte mais marche pas)

ps: j'ai rajouté un titre de colonne. serait-il possible que les commandbouton ne le prenne pas en compte

En vous remerciant encore à vous deux

5couleur.xlsm (22.91 Ko)

Re,

Merci pour ton retour,

j'ai rajouté une colonne est-ce possible de faire la même chose pour celle-ci (j'ai dupliqué ton compte mais marche pas)

Tes données commencent donc à la ligne 2 jusqu'à la ligne 10, aussi bien pour la colonne A que la colonne B.

Donc ta boucle doit se faire de 2 à 10.

Ensuite, tes boutons vont de Commandbutton1 à commandButton18:

  • De 1 à 9 on prend la colonne A
  • De 10 à 18, on prend la colonne B

Au premier tour de boucle, i = 2

  • Pour avoir CommandButton1: on fait CommandButton + i -1 soit 2-1....donc CommandButton1=A2
  • Ensuite pour avoir CommandButton10 : on fait CommandButton i+8 soit 2+8...donc CommandButton10=B2

Au dernier tour de boucle, i=10

  • CommandButton 10-1 donc CommandButton 9 = A10
  • CommandButton 10+8 donc CommandButton 18 = B10
Private Sub UserForm_Initialize()
 Dim i As Integer
  For i = 2 To 10
    UserForm1.Controls("CommandButton" & i - 1).Caption = Sheets("Feuil1").Range("A" & i).Value
    UserForm1.Controls("CommandButton" & i - 1).BackColor = Sheets("Feuil1").Range("A" & i).Interior.Color

    UserForm1.Controls("CommandButton" & i + 8).Caption = Sheets("Feuil1").Range("B" & i).Value
    UserForm1.Controls("CommandButton" & i + 8).BackColor = Sheets("Feuil1").Range("B" & i).Interior.Color
  Next i
End Sub

Un peu de lecture sur la boucle FOR : https://www.excel-pratique.com/fr/vba/boucles

Attention tout de même de ne pas trop abuser des couleurs, ça pique les yeux

14xflox.xlsm (23.46 Ko)

Cordialement,

Bonsoir,

Tous d'abord merci pour votre réaction de me répondre.

C'est super, c'est bien ma demande. Merci

J'arrive à utiliser le code même si j'augmente mes articles, tous marche parfaitement.

Cependant, je bloque sur un cas.

Si ma première colonne comprend 20 ligne et que ma deuxième colonne en a que 5

Pour la première c'est marquer 2 TO 21,

Si j'ai 30 article c'est marquer 2 TO 31

Pour la première colonne pas de soucis, je crois l'avoir bien compris

Cependant, si j'ai que 5 ou 10 (que ma deuxième colonne ai moins que la 1ère), je bloque.

C'est peut-être jusque une question de - ou de + mais après x essaie j'arrive pas.

Pourriez-vous m'aider

En vous remerciant

Bonjour xFlox, le forum,

Cependant, si j'ai que 5 ou 10 (que ma deuxième colonne ai moins que la 1ère), je bloque.

As-tu essayer de faire 2 boucles distinctes ?

Un exemple:

15xflox-v2.xlsm (23.57 Ko)

Cordialement,

Bonjour xorsankukai,

Je sais pas comment te remercier, mais MERCI

C'est exactement ce que je cherché.

Encore mille Merci

Bonjour XFlox, Gmb, Xorsankukai,

On peut aussi ne garder qu'une seule boucle pour l'ensemble des boutons.

Private Sub UserForm_Initialize()
 Dim i As Integer, Col As String
 For i = 2 To 21
 If i < 17 Then Col = "A" Else Col = "B": b = -15
 Me.Controls("CommandButton" & i - 1).Caption = Sheets("bdd").Range(Col & i + b).Value
 Me.Controls("CommandButton" & i - 1).BackColor = Sheets("bdd").Range(Col & i + b).Interior.Color
 Next i
End Sub

Bonne continuation.

Bonjour xcellus,

Je te remercie de ta réponse.

ça marche aussi

Merci

8classeur1.xlsm (33.26 Ko)

Re,

Je sais pas si je vois crois mais est-ce possible de copier le module dans un commandbutton.

Je m'explique, comme tu peux voir, il y 70 commandbutton qui correspond à la colonne produits et j'ai 7 commandbutton qui correspond à la colonne famille.

J'aimerais si je change la disposition de mon usurform, par exemple 63 pour produit et 14 pour famille

avec le code que j'ai, la présentation de mon usurform changera sans soucis, cependant le code macro ne changera pas.

Est-possible de le changer automatiquement sans le changer manuellement.

En te remerciant.

Bonjour XFlox, le Forum,

En retour ton fichier avec un userform variable.

Il sera construit en fonction de ta base de données.Colonne A et B

Le tableau en colonne D à E peut être placé ailleurs si besoin.

Bons tests, bonne continuation.

Bonjour X celus,

Je te remercie de ton temps et de ta réponse.

J'ai regardé et vais essayer de le comprendre au plus vite.

Ca l'aire de fonctionner comme j'aimerais et je t'en remercie.

Cependant, je remarque quand modifiant mes colonnes, mes commandboutton change de taille aussi.

Est-ce normal

Merci

Bonjour XFlox, le Forum,

Oui, c'est normal. ll y a une adaptation en fonction du nombre de boutons affichables.

Plus ce nombre est grand, moins les boutons prendront de place. Car ton écran n'est pas extensible sauf en jouant avec la résolution de ce dernier.

Et moins il y aura de boutons plus ceux-ci pourront s'afficher avec aisance. Compte tenu de la taille du formulaire adaptable.

Bonne continuation.

Bonjour,

J'ai oublié de préciser qu'il y aura maximum dans mon userform 77 commandbutton

ou ça peut varier c'est le nombre dans la colonne 2 (ça peut varier de 4 à 7)

Merci

A nouveau,

Donc c'est adapté à tous tes objectifs en nombre maximal de boutons. Quelque soit la colonne.

L'autre avantage étant que le formulaire n'occupe pas tous l'écran.

OK

Merci beaucoup

Rechercher des sujets similaires à "copier fond couleur commandbutton"