Transférer des valeurs de textbox vers des cellules

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mamarus

XLDnaute Junior
Bonjour le Forum,

Je suis parti d'un code en VBA récupéré , pour tenter de mettre en place un projet, je rencontre aujourd'hui un problème à savoir la prise en compte de données d'un graphique ( janvier à Décembre ) pour alimenter celui ci.
Cela passe par le transfert de valeur des Textbox sur des cellules d'une feuille Excel ( Graph ). le code pour cela est je suppose :
'Worksheets.("Feuil5").Range("B2").Value = userform2.(TextBox11).Value

Mais ou le placer ? , j'ai tentai de mettre cette ligne dans le code de mon userform2, la partie qui permet d'appeler ou de modifier les données, mais apparemment cela bloque avec un "with", ou dans le code de la feuille "Graph", avant la procédure du lancement de l'affichage du graphique, mais rien n'y fait, la cellule B2 ne prend pas la valeur de la textbox11 par exemple.

Ah j'oubliai, mais vous avez du vous en rendre compte, je débute en VBA, pour l'instant, c'est beaucoup d'interrogations je l'avoue.

Si quelqu'un pouvait m'aider à solutionner ce problème, je l'en remercie par avance.
je joins une copie du fichier en exemple.

Mamarus
 

Pièces jointes

Solution
Bonjour

C'est l'évènementielle de ta feuille graph qui plante, j'avais oublié une désactivation d'évènements lors de la mise à jour de la feuille graph à la création d'un compteur.
voila le fichier corrigé, cela devrait fonctionner

Cordialement, @+
Re bonjour Yeahou,

J'ai testé cela fonctionne parfaitement, je t'en remercie encore une fois.
j' avais une question, sur la suite de mon projet, je vais placer en lieu et place du graph un certain nombre de label et textbox supplémentaires qui serviront pour des calculs et ratios et seront stockés ensuite sur mon fichier de base. ceux ci seront appelés par le bouton "consommation".
Je me posai la question : vu que l'userform2 grossi de plus en plus, n'est t'il pas plus simple de créer un nouveau userform, qui viendrait se placer dans le userform2, en lieu et place du graph, qui ne s'occuperait que de cette partie là, serait il plus simple à gérer ? , en sachant qu'il sera appelé plus tard à apparaitre et à disparaitre en fonction du bouton "Consommations", ou vaut il mieux, de continuer sur l'userform2 ?

Si tu peux me donner ton avis, ce serait sympa

Merci,

Mamarus
 
Bonjour

je ne pense pas qu'il soit interressant de créer un second userform pour en copier l'image dans le premier.
Tous tes contrôles possèdent une propriété visible que tu peux utiliser pour les faire apparaitre ou disparaitre.
tu peux superposer tes contrôles et rendre visible ceux que tu veux au moment ou tu le veux.

Cordialement
 
Bonjour Yeahou,

Excuse moi pour la réponse tardive, ( petit problème de santé ) , après réflexion, j'en suis arrivé à la même conclusion que toi, je vais rester sur le même userform, mais est il possible de placer les phases d'afficher et de masquer de ces textbox dans un module, que j'appelerai ensuite sur l'userform par l'instruction "call", cela permettrait d'épurer visuellement, le code de l'userform , ou n'est ce tout simplement pas la fonction de base d'un module ?
Débutant en VBA, il est vrai que je me pose beaucoup de questions, les réponses données me permettent d'apprendre et de progresser.

Je te remercie pour ta compréhension.

Bien cordialement;

Mamarus
 
Bonjour Yeahou,

j'ai fait évolué mon projet en rajoutant une 2 ème partie qui sera consacré à la partie décisionnaire du projet, le tout en rajoutant des Textbox supplémentaires et ou le tout s'inscrit dans le fichier base.
Je coince sur une checkbox que j'ai rajouté dans mon userform, le principe est que si elle est cochée, elle reprend le contenu du caption, c'est à dire "EV", j'ai essayé plein de chose, mais rien n'y fait, si tu peux voir le code que j'ai mis d'ans l'userform2, je t'en remercie.
j'ai joint un nouveau fichier plus récent.
Bien cordialement;
Mamarus
 

Pièces jointes

Bonjour

là tu mélanges des chèvres et des choux, le caption de ton checkbox1 contient en fait checkbox1 (si tu l'agrandis, tu le verras), je vois EV dans le caption du label31 et du label32
pour la syntaxe ce serait plutôt
Feuil7.Range("AH" & b).Value = CheckBox1.Caption
si c'est bien la valeur EV que tu veux, plutôt
Feuil7.Range("AH" & b).Value = Label31.Caption

Cordialement, @+
 
Bonjour Yeahou,

Je me suis mal exprimé, ou du moins pas complétement, ce que je souhaite, c'est que si la case à cocher est préssée dans la fiche compteur, cela inscrit le "EV" dans sa cellule attribuée dans la colonne AH de l'onglet Base, dans le cas contraire, rien, ou un espace , j'aurai à faire des requêtes plus tard la dessus.

j'ai mis un code sur le fichier joint, une erreur me dit qu'il manque un else ou un next, alors que les 2 y sont !, j'ai essayé d'échanger leur ordre en vain.

Si tu peut y jeter un œil,

Merci,

Cordialement,

Mamarus
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
81
Retour