Soucis de variables
Résolu
duduleray
Messages postés
21
Date d'inscription
Statut
Membre
Dernière intervention
-
Duduleray -
Duduleray -
Bonjour,
Voila, j'ai un petit soucis de variable, j'ai donc une variable "Nom"
et plusieurs tableaux pour l'instant la pour essai baptiser "Dégradé1" "Dégradé2" "Dégradé3"
je souhaiterai utiler qu'une seule fois la boucle "For Each S In Nom"
Sur un test Ex:
if X=1 then Nom ="Dégradé1"
if X=51 then Nom ="Dégradé2"
etc etc mais ca marche pas les tests sont bons mais la variable "Nom" ne change pas
----------
PS: le code ci-dessous ne fait rien de spécial ici, c'est juste un bout pour voir
si possible ou pas.
>>>>> Voir svp commentaire dans ligne de code
Merci a vous et de votre temps, bonne journée a tous
Cdtl Ray
Voila, j'ai un petit soucis de variable, j'ai donc une variable "Nom"
et plusieurs tableaux pour l'instant la pour essai baptiser "Dégradé1" "Dégradé2" "Dégradé3"
je souhaiterai utiler qu'une seule fois la boucle "For Each S In Nom"
Sur un test Ex:
if X=1 then Nom ="Dégradé1"
if X=51 then Nom ="Dégradé2"
etc etc mais ca marche pas les tests sont bons mais la variable "Nom" ne change pas
----------
PS: le code ci-dessous ne fait rien de spécial ici, c'est juste un bout pour voir
si possible ou pas.
>>>>> Voir svp commentaire dans ligne de code
Public Ctl As Msforms.Control, MyNumBox As NumBox: Public NumBoxes As Collection Public WithEvents Bouton As Msforms.CommandButton: Public Nb As Integer, Ctrl As Control Public S, X, Nom, Dégradé1, Dégradé2, Dégradé3 As Variant Dim Boutons() As New NumBox Private Sub Userform_Initialize() '*** Dégradé1 du bouton N°1 à N°50 X = 1 If X = 1 Then Nom = "Dégradé1" '*** Comme ca ca marche pas if X= 1 then Nom = Dégradé1 '*** Comme ca non plus Dégradé1 = Array(46, 55, 64, 73, 82, 91, 100, 109, 118, 127, 137, 146, 155, 164, 173, 182, 191, 200) 'X = 51: Nom = Dégradé2 'Dégradé2 = Array(11776, 14080, 16384, 18688, 20992, 23296) 25600, 27904, 30208, 32512, 35072, 37376) Set NumBoxes = New Collection On Error Resume Next For Each S In Nom '*** ici quand je mets "Dégradé1 ou Dégradé2 ou Dégradé3" c'est bon Controls("CommandButton" & (X)).BackColor = S Me("CommandButton" & (X)).BackColor = S Set MyNumBox = New NumBox Set MyNumBox.TargetBox = Me("CommandButton" & (X)) NumBoxes.Add MyNumBox X = X + 1 Next S End Sub
Merci a vous et de votre temps, bonne journée a tous
Cdtl Ray
A voir également:
- Soucis de variables
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp ✓ - Forum Microsoft Office
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
- Variable objet ou variable de bloc with non définie - Forum VB / VBA
- Impossible de créer le fichier de travail.verifiez variable TEM ✓ - Forum Word
- Vérifier variable d'environnement TEMP - Forum Word
9 réponses
Bonjour,
En fait, tu remplis tes variables dans le désordre.
D'abord tu dis Nom = dégradé et après tu affectes des valeurs à dégradé.
Fais le dans le sens inverse.
1- remplis tes variables tableaux dégradé, puis affectes en une à Nom...
Comme ceci :
En fait, tu remplis tes variables dans le désordre.
D'abord tu dis Nom = dégradé et après tu affectes des valeurs à dégradé.
Fais le dans le sens inverse.
1- remplis tes variables tableaux dégradé, puis affectes en une à Nom...
Comme ceci :
Option Explicit Public S, X, Nom, Dégradé1, Dégradé2, Dégradé3 As Variant Sub test() X = 2 'ou X = 1 pour tests... Dégradé1 = Array(46, 55, 64, 73, 82, 91, 100, 109, 118, 127, 137, 146, 155, 164, 173, 182, 191, 200) Dégradé2 = Array(11776, 14080, 16384, 18688, 20992, 23296, 25600, 27904, 30208, 32512, 35072, 37376) If X = 1 Then Nom = Dégradé1 Else Nom = Dégradé2 For Each S In Nom Debug.Print S Next End Sub
Salut Pijaku
Je te remercie de ton aide, je regarde ça en rentrant (RDV toubib), te donne suite dès que possible, suis a la bourre
Merci tout mème ,c'est gentil LOL
A plus tard , bonne journée a toi
Cdtl Raymond
Je te remercie de ton aide, je regarde ça en rentrant (RDV toubib), te donne suite dès que possible, suis a la bourre
Merci tout mème ,c'est gentil LOL
A plus tard , bonne journée a toi
Cdtl Raymond
Salut Pijaku,
Bon écoute que du bonheur, ça marche bien, bien compris ton explication aussi
Un grand merci a toi,
Une question svp: je m'explique:
chaque "dégradé1 - 2 ou 3" corresponds a 50 valeurs décimales
j'ai un userform avec 50 commandbuttons qui sont coloriés avec ces valeurs (dégradé1 corresponds au rouge, dégradé2 au Vert)
Je souhaiterai creer un Label dans mon USF et faire varier dans ce label les 50 couleurs du dégradé1 ou 2 ou 3 avec un scrollbar , MAIS un Dégradé a la fois
Je ne sais pas faire, je saurai mettre en place mais pas coder
Pourrait tu svp et si tu a le temps et le savoir pour me faire ça, cela fait un moment que je cherche a faire hélas sans bon résultat
Encore merci pour ton aide
A plus tard
Cdtl Raymond
Bon écoute que du bonheur, ça marche bien, bien compris ton explication aussi
Un grand merci a toi,
Une question svp: je m'explique:
chaque "dégradé1 - 2 ou 3" corresponds a 50 valeurs décimales
j'ai un userform avec 50 commandbuttons qui sont coloriés avec ces valeurs (dégradé1 corresponds au rouge, dégradé2 au Vert)
Je souhaiterai creer un Label dans mon USF et faire varier dans ce label les 50 couleurs du dégradé1 ou 2 ou 3 avec un scrollbar , MAIS un Dégradé a la fois
Je ne sais pas faire, je saurai mettre en place mais pas coder
Pourrait tu svp et si tu a le temps et le savoir pour me faire ça, cela fait un moment que je cherche a faire hélas sans bon résultat
Encore merci pour ton aide
A plus tard
Cdtl Raymond
Re- Raymond,
Ca n'est pas que je n'ai pas le temps ni l'envie de te faire ça, mais quelqu'un d'autre l'a déjà réalisé. Qui plus est quelqu'un d'hyper compétent...
Regarde les codes de ce fichier de Silkyroad
Si tu ne t'en sort pas, reviens pour d'éventuelles questions...
Ca n'est pas que je n'ai pas le temps ni l'envie de te faire ça, mais quelqu'un d'autre l'a déjà réalisé. Qui plus est quelqu'un d'hyper compétent...
Regarde les codes de ce fichier de Silkyroad
Si tu ne t'en sort pas, reviens pour d'éventuelles questions...
Salut pijaku,
Je te joint mon fichier remis au gout , j'ai essayer mais je n'arrive pas a faire varier aucun
de mes dégradés
j'ai suivi tes conseils en me bassant sur fichier du lien que tu m'a passer, mais ça colle pas.
Si tu a le temps svp de bien vouloir regarder, ou une idée, je t'en serai bien reconnaisant.
Merci d'avance, je vais encore essayer.
PS: j'ai re-baptiser les variables "dégradé"pour plus de lisibilité
Cdtl Raymond
Je te joint mon fichier remis au gout , j'ai essayer mais je n'arrive pas a faire varier aucun
de mes dégradés
j'ai suivi tes conseils en me bassant sur fichier du lien que tu m'a passer, mais ça colle pas.
Si tu a le temps svp de bien vouloir regarder, ou une idée, je t'en serai bien reconnaisant.
Merci d'avance, je vais encore essayer.
PS: j'ai re-baptiser les variables "dégradé"pour plus de lisibilité
Cdtl Raymond
Private Sub Userform_Initialize() '*** DégradéRouge du bouton N°1 à N°50 X = 1 DégradéRouge = Array(46, 55, 64, 73, 82, 91, 100, 109, 118, 127, 137, 146, 155, 164, 173, 182, 191, 200, 209, 219, 228, 237, 246, 255, 592383, 1184511, _ 1776639, 2368767, 3026687, 3618815, 4210943, 4803071, 5395199, 5987327, 6579455, 7171583, 7763711, 8355839, 9013759, 9605887, 10198015, 10790143, _ 11382271, 11974399, 12566527, 13158655, 13750783, 14408703, 15000831, 15592959) DégradéVert = Array(11776, 14080, 16384, 18688, 20992, 23296, 25600, 27904, 30208, 32512, 35072, 37376, 39680, 41984, 44288, 46592, 48896, 51200, 53504, 56064, 58368, _ 60672, 62976, 65280, 655113, 1244946, 1834779, 2424612, 3079982, 3669815, 4259648, 4849481, 5439314, 6029147, 6618980, 7208813, 7798646, 8388479, _ 9043849, 9633682, 10223515, 10813348, 11403181, 11993014, 12582847, 13172680, 13762513, 14417883, 15007716, 15597549) If X = 1 Then Nom = DégradéRouge Else Nom = DégradéVert Set NumBoxes = New Collection On Error Resume Next For Each S In Nom Debug.Print S Controls("CommandButton" & (X)).BackColor = S Me("CommandButton" & (X)).BackColor = S Set MyNumBox = New NumBox Set MyNumBox.TargetBox = Me("CommandButton" & (X)) NumBoxes.Add MyNumBox X = X + 1 Next S '*** Paramètre ScrollBar1 With ScrollBar1 .Min = 0 .Max = 50 'Nombre de couleur .LargeChange = 1 .SmallChange = 1 End With End Sub '*** Variation DégradéRouge dans Label17 avec ScrollBar1 Private Sub ScrollBar1_Change() Label15.Caption = ScrollBar1.Value 'Compteur scrollbar1 End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
RE salut
Merci bien pour le lien, j'ai télécharger le fichier, je regarde si je peux m'inspirer de son code pour récupérer mes 50 valeurs.
je vais toujours essayer cette après midi, te tient au courant.
A plus tard
Cdtl Raymond
Merci bien pour le lien, j'ai télécharger le fichier, je regarde si je peux m'inspirer de son code pour récupérer mes 50 valeurs.
je vais toujours essayer cette après midi, te tient au courant.
A plus tard
Cdtl Raymond
Salut pijaku,
Bien reçu le fichier, ça fonctionne bien
"Simple me dit-tu", pourquoi aurai tu une idée derrière la tète, que tu me cacherai
dit moi tout svp moi je sèche sur ce coup la, mais si ça peut apporter un plus bien
je suis preneur, tu penses bien. LOL
Néanmoins je n'avais pas penser a coder de cette façon, je te remercie beaucoup
pour ton aide et ton savoir, c'est très très gentil de ta part.
Bonne soirée a toi
Cordialement Raymond
Bien reçu le fichier, ça fonctionne bien
"Simple me dit-tu", pourquoi aurai tu une idée derrière la tète, que tu me cacherai
dit moi tout svp moi je sèche sur ce coup la, mais si ça peut apporter un plus bien
je suis preneur, tu penses bien. LOL
Néanmoins je n'avais pas penser a coder de cette façon, je te remercie beaucoup
pour ton aide et ton savoir, c'est très très gentil de ta part.
Bonne soirée a toi
Cordialement Raymond
Bonjour Franck,
Ok message bien recu, tout fonctionne très bien, j'ai appris bien des trucs grace a toi, je te remercie sincerement de ton aide ainsi que ta patience, ce n'ai toujours facile de ce faire comprendre.
Par contre ça j'ai bien compris "édoukilé??? Douktami le fichier???" c'est du langage
nouvelle version VBA extra terreste, en tout ça m'a bien fait rigoler. LOL
Bonne continuation a toi et surement a bientôt
Encore merci Franck bye bye Cordialement Raymond
Ok message bien recu, tout fonctionne très bien, j'ai appris bien des trucs grace a toi, je te remercie sincerement de ton aide ainsi que ta patience, ce n'ai toujours facile de ce faire comprendre.
Par contre ça j'ai bien compris "édoukilé??? Douktami le fichier???" c'est du langage
nouvelle version VBA extra terreste, en tout ça m'a bien fait rigoler. LOL
Bonne continuation a toi et surement a bientôt
Encore merci Franck bye bye Cordialement Raymond