Problème de combobox et textbox

Fermé
AlainProviste - Modifié le 16 sept. 2020 à 17:19
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 - 17 sept. 2020 à 09:18
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

yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
16 sept. 2020 à 19:40
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?
0
AlainProviste
16 sept. 2020 à 20:56
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.
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
16 sept. 2020 à 21:47
s'il s'agit bien de la combobox CboRECHERCHES, je ne vois pas comment ce que tu expliques est possible.
peux-tu partager ton fichier? pour faire cela, publier ton fichier sur internet (cjoint.com, google drive, ...), et partager ici un lien vers le fichier.
0
AlainProviste > yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024
16 sept. 2020 à 22:34
Re,

voici le lien de mon "programme épuré"

https://www.cjoint.com/c/JIquGKKJ0Cc
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477 > AlainProviste
16 sept. 2020 à 22:57
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?
0
AlainProviste > yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024
Modifié le 17 sept. 2020 à 00:40
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.
0
AlainProviste > yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024
17 sept. 2020 à 01:28
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...
0