Problème de combobox et textbox

Signaler
-
Messages postés
12322
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
24 septembre 2020
-
Bonjour,

Je suis débutant en programmation et je rencontre des difficultés pour que mes mes textbox se remplissent de données en fonction des ANNEES sélectionnées dans ma combobox.

En effet :
Les données de mes textbox sont "alimentées" depuis une feuille de calcul excel(1 colonne-257 lignes) .

Lorsque je clicke sur ma premiere ANNEE (2020) cela fonctionne mais lorsque je souhaite changer d'année cela ne fonctionne plus !

exemple
Combobox =AN 2020 jusqu'à 2026
Si ANNEE dans ma COMBOBOX= 2020 alors,
Envoie l'info (ANNEE) à ma feuille de calcul (comportant des formules sommeprod) qui après traitement sommeprod les envoie dans mes textexbox (Rouge si aucune donnée ; verte si données positives.)
Jusque là c'est OK

Mais lorsque je clicke dans ma combobox sur une autre année, des valeurs incohérentes s'affichent dans m'es textbox.


Private Sub CboRECHERCHES_Change()

Worksheets("LISTES").Activate
Range("B3:B9").Select
Range("B3:B9").Activate


Sheets("SOURCE").Range("R2").Value = CboRECHERCHES.Value

Worksheets("SOURCE").Activate
Range("R2").Select
Range("R2").Activate

'JANVIER

TxtSanteJANVIER.Value = Worksheets("SOURCE").Range("R60").Value
TXTFAMILLEJANVIER.Value = Worksheets("SOURCE").Range("R61").Value
TxtLOGEMENTJANVIER.Value = Worksheets("SOURCE").Range("R62").Value
TxtPLACEMENTSJANVIER.Value = Worksheets("SOURCE").Range("R63").Value
TxtANIMAUXJANVIER.Value = Worksheets("SOURCE").Range("R64").Value
TxtVEHICULESJANVIER.Value = Worksheets("SOURCE").Range("R65").Value
TxtBilanJANVIER.Value = Worksheets("source").Range("S66").Value

'FEVRIER

TxtSANTEFevrier.Value = Worksheets("SOURCE").Range("R67").Value
TXTFAMILLEFevrier.Value = Worksheets("SOURCE").Range("R68").Value
TxtLOGEMENTFevrier.Value = Worksheets("SOURCE").Range("R69").Value
TxtPLACEMENTSFevrier.Value = Worksheets("SOURCE").Range("R70").Value
TxtANIMAUXFevrier.Value = Worksheets("SOURCE").Range("R71").Value
TxtVEHICULESFevrier.Value = Worksheets("SOURCE").Range("R72").Value
TXTBILANFevrier.Value = Worksheets("source").Range("S73").Value


'MARS

TxtSanteMars.Value = Worksheets("SOURCE").Range("R74").Value
TxtFAMILLEMars.Value = Worksheets("SOURCE").Range("R75").Value
TxtLOGEMENTMars.Value = Worksheets("SOURCE").Range("R76").Value
TxtPLACEMENTSMars.Value = Worksheets("SOURCE").Range("R77").Value
TxtANIMAUXMars.Value = Worksheets("SOURCE").Range("R78").Value
txtVEHICULESMars.Value = Worksheets("SOURCE").Range("R79").Value
TxtBilanMars.Value = Worksheets("source").Range("S80").Value

'AVRIL

TXTSANTEAvril.Value = Worksheets("SOURCE").Range("R81").Value
TxtFAMILLEAvril.Value = Worksheets("SOURCE").Range("R82").Value
TxtLOGEMENTAvril.Value = Worksheets("SOURCE").Range("R83").Value
TxtPLACEMENTSAvril.Value = Worksheets("SOURCE").Range("R84").Value
TxtANIMAUXAvril.Value = Worksheets("SOURCE").Range("R85").Value
TxtVEHICULESAvril.Value = Worksheets("SOURCE").Range("R86").Value
TxtBilanAvril.Value = Worksheets("source").Range("S87").Value


'MAI

TxtSanteMai.Value = Worksheets("SOURCE").Range("R88").Value
TxtFamilleMai.Value = Worksheets("SOURCE").Range("R89").Value
TxtLogementMai.Value = Worksheets("SOURCE").Range("R90").Value
TxtPlacementsMai.Value = Worksheets("SOURCE").Range("R91").Value
TxtAnimauxMai.Value = Worksheets("SOURCE").Range("R92").Value
TxtVehiculesMai.Value = Worksheets("SOURCE").Range("R93").Value
TxtBilanMai.Value = Worksheets("source").Range("S94").Value




'JUIN

TxtSanteJuin.Value = Worksheets("SOURCE").Range("R95").Value
TxtFamilleJuin.Value = Worksheets("SOURCE").Range("R96").Value
TxtLogementJuin.Value = Worksheets("SOURCE").Range("R97").Value
TxtPlacementsJuin.Value = Worksheets("SOURCE").Range("R98").Value
TxtAnimauxJuin.Value = Worksheets("SOURCE").Range("R99").Value
TxtVehiculesJuin.Value = Worksheets("SOURCE").Range("R100").Value
TxtBilanJuin.Value = Worksheets("source").Range("S101").Value


'JUILLET

TxtSanteJuillet.Value = Worksheets("SOURCE").Range("R102").Value
TxtFamillejuillet.Value = Worksheets("SOURCE").Range("R103").Value
TxtLogementJuillet.Value = Worksheets("SOURCE").Range("R104").Value
TxtPlacementsjuillet.Value = Worksheets("SOURCE").Range("R105").Value
TxtAnimauxJuillet.Value = Worksheets("SOURCE").Range("R106").Value
TxtVehiculesJuillet.Value = Worksheets("SOURCE").Range("R107").Value
TxtBilanJuillet.Value = Worksheets("source").Range("S108").Value


'AOUT

TxtSanteAout.Value = Worksheets("SOURCE").Range("R109").Value
TxtFamilleAout.Value = Worksheets("SOURCE").Range("R110").Value
TxtLogementAout.Value = Worksheets("SOURCE").Range("R111").Value
TxtPlacementsAout.Value = Worksheets("SOURCE").Range("R112").Value
TxtAnimauxAout.Value = Worksheets("SOURCE").Range("R113").Value
TxtVehiculesAout.Value = Worksheets("SOURCE").Range("R114").Value
TxtBilanAout.Value = Worksheets("source").Range("S115").Value


'SEPTEMBRE

TxtSanteSeptembre.Value = Worksheets("SOURCE").Range("R116").Value
TxtFamilleSeptembre.Value = Worksheets("SOURCE").Range("R117").Value
TxtLogementSeptembre.Value = Worksheets("SOURCE").Range("R118").Value
TxtPlacementsSeptembre.Value = Worksheets("SOURCE").Range("R119").Value
TxtAnimauxSeptembre.Value = Worksheets("SOURCE").Range("R120").Value
TxtVehiculesSeptembre.Value = Worksheets("SOURCE").Range("R121").Value
TxtBilanSeptembre.Value = Worksheets("source").Range("S122").Value

'TxtBilAnToutesRubriquesPart.Value = Worksheets("source").Range("R87").Value



'OCTOBRE

TxtSanteOctobre.Value = Worksheets("SOURCE").Range("R123").Value
TxtFamilleOctobre.Value = Worksheets("SOURCE").Range("R124").Value
TxtLogementOctobre.Value = Worksheets("SOURCE").Range("R125").Value
TxtPlacementsOctobre.Value = Worksheets("SOURCE").Range("R126").Value
TxtAnimauxOctobre.Value = Worksheets("SOURCE").Range("R127").Value
TxtVehicOctobre.Value = Worksheets("SOURCE").Range("R128").Value
TxtBilanOctobre.Value = Worksheets("source").Range("S129").Value

'TxtBilAnToutesRubriquesPart.Value = Worksheets("source").Range("R87").Value



'NOVEMBRE

TxtSanteNovembre.Value = Worksheets("SOURCE").Range("R130").Value
TxtFamilleNovembre.Value = Worksheets("SOURCE").Range("R131").Value
TxtLogementNovembre.Value = Worksheets("SOURCE").Range("R132").Value
TxtPlacementsNovembre.Value = Worksheets("SOURCE").Range("R133").Value
TxtAnimauxNovembre.Value = Worksheets("SOURCE").Range("R134").Value
TxtVehiculesNovembre.Value = Worksheets("SOURCE").Range("R135").Value

TxtBilanNovembre.Value = Worksheets("source").Range("S136").Value

'TxtBilAnToutesRubriquesPart.Value = Worksheets("source").Range("R87").Value



'DECEMBRE

TxtSanteDecembre.Value = Worksheets("SOURCE").Range("R137").Value
TxtFamilleDecembre.Value = Worksheets("SOURCE").Range("R138").Value
TxtLogementDecembre.Value = Worksheets("SOURCE").Range("R139").Value
TxtPlacementsDecembre.Value = Worksheets("SOURCE").Range("R140").Value
TxtAnimauxDecembre.Value = Worksheets("SOURCE").Range("R141").Value
TxtVehiculesDecembre.Value = Worksheets("SOURCE").Range("R142").Value

TxtBilanDecembre.Value = Worksheets("source").Range("S143").Value

J'espère avoir résumé de manière compréhensible mon problème .
Je vous remercie par avance pour l'aide que vous voudrez bien m'apporter.

2 réponses

Messages postés
12322
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
24 septembre 2020
694
bonjour,
peux-tu utiliser les balises de code quand tu partages du code (en précisant basic pour du VBA): https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

tu n'as pas précisément expliqué ton problème. veux-tu dire, par exemple, que le textbox TxtSanteJANVIER ne contient pas la valeur de la cellule R60 de la feuille SOURCE?

Bonjour,

merci de m'avoir répondu en te priant de m'excuser pour l'absence de précision "basic pour VBA". C'est la première fois que j'utilise le site. Depuis plusieurs jours j'ai "bidouillé" à l'aveugle des codes sans résultat. Malgré de nombreuses recherches sur le forum je n'en ai trouvé aucune correspondant à mon problème particulier où bien je n'arrivais pas à les adapter à mes codes;

S'agissant par exemple de la textbox SanteJANVIER, justement je souhaiterais que la valeur figurant dans ma feuille source affichée en " R60" apparaisse dans ma txtSanteJanvier au même titre que les 71 autres textbox et ce en fonction de l'année souhaitée qui est déterminée par l'année qui a été envoyée par cboANNEE en R2 de ma feuille SOURCE.
Pour l'année 2020 ça fonctionne mais pour les autres "nada".
J'espère avoir été plus précis.
Merci par avance.
>
Messages postés
12322
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
24 septembre 2020

Re,

voici le lien de mon "programme épuré"

https://www.cjoint.com/c/JIquGKKJ0Cc
Messages postés
12322
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
24 septembre 2020
694 > AlainProviste
ok, tu écris que que le textbox TxtSanteJANVIER ne contient pas la valeur de la cellule R60 de la feuille SOURCE: que vois-tu comme valeurs pour chacun?
>
Messages postés
12322
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
24 septembre 2020

Re,

si en R2 (ANNEE) j'ai par exemple 2020, tout mes textbox auront la valeur R60=Santé, R61 =Famille, R62=Logement ,R63 = Placements, R64=Animaux, R-65=VEHICULES et ce pour chaque mois de l'année 2020. Parceque en U je n'ai que des dates de 2020.

Si je change en colonne T 2020 eni 2021 et que si en R2 il y a 2021 alors les références suscitées pendront les valeurs contenues dans U à AK,

Petite précision, je n'ai mis en colonne T que des dates de 2020 mais il est possible de mettre : 2021, 2022, 2023 etc.. Avec sommeprod, le tri sera fait automatiquement .

Ainsi les colonnes R60 suivantes seront renseignées avec les valeurs contenues dans U à AK et ayant un rapport direct avec l'ANNEE de R2 . Tout ça fonctionne, MAIS

Le problème est que ces valeurs (situées en R60 et suivants...) ont du mal à aller "alimenter" les textbox.
Messages postés
12322
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
24 septembre 2020
694 > AlainProviste
si je comprends bien, je ne peux pas reproduire ton problème parce que la colonne T ne contient que des dates en 2020?
peux-tu alors partager un fichier qui me permette de reproduire le problème?
>
Messages postés
12322
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
24 septembre 2020

Re,

"ok, tu écris que que le textbox TxtSanteJANVIER ne contient pas la valeur de la cellule R60 de la feuille SOURCE: que vois-tu comme valeurs pour chacun?"


Il semblerait que tu as visualisé les codes du tout début du frmAnMois . Or il s'agit de codes permettant d'effacer le formulaire et en aucun cas de dire que txtSante et suivants ne contiennent pas de valeur.
'**********************************************
'Procedure permettant d'effacer le formulaire
'de saisie par ANNEES
'**********************************************


Il faut descendre plus bas
Le code posant problème se trouve après l'intitulé :

'************************************
'Procedure permettant de visualiser
'les statistiques selon l'ANNEE
'************************************

Private Sub CboRECHERCHES_Change()

Worksheets("LISTES").Activate
Range("B3:B9").Select
Range("B3:B9").Activate


Sheets("SOURCE").Range("R2").Value = CboRECHERCHES.Value

Worksheets("SOURCE").Activate
Range("R2").Select
Range("R2").Activate

'JANVIER

TxtSanteJANVIER.Value = Worksheets("SOURCE").Range("R60").Value
TXTFAMILLEJANVIER.Value = Worksheets("SOURCE").Range("R61").Value
TxtLOGEMENTJANVIER.Value = Worksheets("SOURCE").Range("R62").Value
TxtPLACEMENTSJANVIER.Value = Worksheets("SOURCE").Range("R63").Value
TxtANIMAUXJANVIER.Value = Worksheets("SOURCE").Range("R64").Value
TxtVEHICULESJANVIER.Value = Worksheets("SOURCE").Range("R65").Value
TxtBilanJANVIER.Value = Worksheets("source").Range("S66").Value

'FEVRIER

etc jusqu'à DECEMBRE...

Merci pour le temps que tu me consacres...