XL 2019 Faire comuniquer un tabeau Excel avec un Userform

thunder23

XLDnaute Occasionnel
Bonsoir le forum,

Je souhaite que quand j'appelle un Userform celui-ci se rempli des valeurs. Je ne vois que par des Textbox sauf qu'il faut un certain type de boucle et je ne sais pas comment faire.

J'ai mis un fichier en exemple afin de mieux comprendre se que je recherche.

Merci d'avance pour vos réponses ;)
 

Pièces jointes

  • test1.xlsm
    41.6 KB · Affichages: 25
Solution
Bonsoir.
'aurais peut être plutôt mis une ListBox, mais tel que votre UFm est dessiné :
VB:
Option Explicit
Private RngDon As Range, TDon()
Private Sub UserForm_Initialize()
   Dim L&, C&
   Set RngDon = ActiveSheet.[A3:F14]
   TDon = RngDon.Value
   For L = 1 To UBound(TDon, 1)
      Me("Label" & L).Caption = TDon(L, 1)
      For C = 2 To 6
         Me("TextBox" & (L - 1) * 5 + C - 1).Text = TDon(L, C)
         Next C, L
   End Sub
Private Sub CommandButton1_Click()
   Dim L&, C&
   Set RngDon = ActiveSheet.[A3:F14]
   TDon = RngDon.Value
   For L = 1 To UBound(TDon, 1)
      For C = 2 To 6
         If C < 4 Then
            TDon(L, C) = CDate(Me("TextBox" & (L - 1) * 5 + C - 1).Text)
         Else
            TDon(L, C) =...

thunder23

XLDnaute Occasionnel
Bonjour le forum,

Je rouvre ce sujet car j'aurais besoin de ton aide @Dranreb ayant pu m'aider dans cette recherche. Est-il possible que l'USF que tu as grandement contribué puisse rechercher des valeurs dans une feuille nommé archives ou historiques si l'on veut chercher une année complète exemple se que l'on a fait en 2021 ou 2019 ?

J'ai mis l'exemple de la feuille d'archive en pièce jointe.

Merci ;)
 

Pièces jointes

  • test-archives.xlsm
    63.9 KB · Affichages: 8

ChTi160

XLDnaute Barbatruc
Bonsoir Thunder23
En attendant que @Dranreb vienne t'aider §
J'ai pensé à une autre façon de faire .
Je renomme les Label et Les TextBox (pas encore fait Lol)
Exemple pour le Mois de Janvier "Label_1_1" à "Label_1_31" on a donc Label_ le Mois _et le Jour
pour le Mois de Février "Label_2_1" à "Label_2_29" on a donc Label_ le Mois _et le Jour
pour le Mois de Mars "Label_3_1" à "Label_3_31" on a donc Label_ le Mois _et le Jour
pour le Mois de Avril "Label_1_1" à "Label_1_30" on a donc Label_ le Mois _et le Jour
etc etc
pas finis de renommer Lol
Bonne nuit
Jean marie
 

Pièces jointes

  • Thunder-11.gif
    Thunder-11.gif
    442.9 KB · Affichages: 15

thunder23

XLDnaute Occasionnel
Bonsoir Thunder23
En attendant que @Dranreb vienne t'aider §
J'ai pensé à une autre façon de faire .
Je renomme les Label et Les TextBox (pas encore fait Lol)
Exemple pour le Mois de Janvier "Label_1_1" à "Label_1_31" on a donc Label_ le Mois _et le Jour
pour le Mois de Février "Label_2_1" à "Label_2_29" on a donc Label_ le Mois _et le Jour
pour le Mois de Mars "Label_3_1" à "Label_3_31" on a donc Label_ le Mois _et le Jour
pour le Mois de Avril "Label_1_1" à "Label_1_30" on a donc Label_ le Mois _et le Jour
etc etc
pas finis de renommer Lol
Bonne nuit
Jean marie

Bonjour @ChTi160, Bonjour le forum,

c'est intéressant cet autre approche, par contre pour le côté codage ça changerait totalement si je comprends bien?
 

ChTi160

XLDnaute Barbatruc
Bonsoir thunder23
Juste pour patienter Lol
Une Vidéo d'où j'en suis !
Je renomme Tout les Controls "Label" et "TextBox" donc la Vidéo montre où j'en suis .
Pour ce qui est Du code , Non pas plus compliqué plus de Logique Un Mois a 30 Jours , On nomme les Control de Ce mois ex Label_1_1 soit Label du Mois 1 (Janvier) "Label_1_" et 1 pour le Jour ici le Premier "Label_1_1"
On aura donc pour Janvier Label_1_1 à Label_1_31
Idem pour les TextBox pour Janvier TBx_1_1 à TBx_1_31
lorsque l'on Boucle sur les Date elles se mettent direct dans le Label correspondant
VB:
 Indx=Mois(Date)
       J=Day(Date)
ex .Controls("Label_" & Indx & "_"& j)Caption.= Format(Date,"ddd dd")
     .Controls("Label_10_13).caption= Format(Date,"ddd dd")
je continue plus tard !
Bonne fin de Soirée
Jean marie
Ps : j'ai mis l'année 2020 pour la gestion du 29/02/2020
 

Pièces jointes

  • Thunder-12.gif
    Thunder-12.gif
    313.9 KB · Affichages: 10

thunder23

XLDnaute Occasionnel
Bonjour Thunder23
Le fichier (perfectible) , j'y ai mis des Commentaires.
Tu regardes et tu me dis !
Jean marie
Bonjour @ChTi160 ,

Je viens de regarder ton fichier, assez expliquer j'aime bien car tu comprends mieux le fonctionnement. J'ai vue que les TextBox ne reprennent pas leurs couleurs d'origine si elles sont vide. J'ai un peu modifier les select Case en conséquence maintenant c'est bon. Pour les Labels qui changent de couleur en fonction du mois en cours il m'intéresse grandement pour le même USF en année en cours Toutefois si c'est possible, est-ce qu'en fonction de l'année (si elle est en cours), va chercher les données dans une autre feuille(appelé BDD) sinon il pioche dans la feuille archives ?

Par contre est-ce que tu penses possible également mais qu'avec la feuille archive, de mettre un Option caption en True si contenu dans la 3, 4 ou 5ème colonne et qu'en cliquant dessus ça t'affiche une Msgbox avec le détail ?

Michel
 

ChTi160

XLDnaute Barbatruc
Bonjour Michel
quelques modifs
Pas compris :
Pour les Labels qui changent de couleur en fonction du mois en cours il m'intéresse grandement pour le même USF en année en cours Toutefois si c'est possible
ni ça !
Par contre est-ce que tu penses possible également mais qu'avec la feuille archive, de mettre un Option caption en True si contenu dans la 3, 4 ou 5ème colonne et qu'en cliquant dessus ça t'affiche une Msgbox avec le détail ?

Pourquoi ?
est-ce qu'en fonction de l'année (si elle est en cours), va chercher les données dans une autre feuille(appelé BDD) sinon il pioche dans la feuille archives ?
Jean marie
 

Pièces jointes

  • test-archives Chti160-002.xlsm
    90.2 KB · Affichages: 3

thunder23

XLDnaute Occasionnel
Bonjour Michel
quelques modifs
Pas compris :

ni ça !


Pourquoi ?

Jean marie
Bonjour Jean Marie,

Pour le changement de couleur des labels n'en prend pas compte, juste une remarque positive ;)

Pour la deuxième question, en fait dans la feuille archive je copie 5 colonnes comme tu as pu le voir, en fait je voudrais qu'en fonction du contenu dans les colonnes 3,4,5 on puisse faire apparaitre un commentaire. Je t'ai mis en pièce jointe un exemple mais également comment je saisie dans mon fichier.

Pour la troisième question, mon fichier à l'origine un Userform rempli ces 5 colonne dans une feuille BDD, je voudrais que quand je change d'année (par exemple 2024), ça archive ces 5 colonnes dans la feuille archive car aujourd'hui j'efface tout et fait une sauvegarde année par année.

Pour être un peu plus claire je t'ai mis en pièce jointe également la partie principale afin que tu comprennes mieux son fonctionnement.

J'espère avoir répondu à tes questions, n'hésite pas si tu en as d'autres ;)

Michel
 

Pièces jointes

  • commentaire2.JPG
    commentaire2.JPG
    31.7 KB · Affichages: 12
  • commentaire.JPG
    commentaire.JPG
    11.9 KB · Affichages: 13
  • essai aperçu.xlsm
    308.6 KB · Affichages: 4

ChTi160

XLDnaute Barbatruc
Re

Peux-tu m'expliquer ceux ci
en fait je voudrais qu'en fonction du contenu dans les colonnes 3,4,5 on puisse faire apparaitre un commentaire
Qu'entends-tu par :
qu'en fonction du contenu dans les colonnes 3,4,5
C'est quoi le Contenu dans les colonnes 3,4,5
Qui doit permettre qu'on
on puisse faire apparaitre un commentaire
Où ? Quand? ... Lol

Je n'ai peut -être pas Compris une évidence Lol
si c'est lors du remplissage du Calendrier (GTA) mettre le Commentaire en Comment de la Cellule ?
Jean Marie
 

thunder23

XLDnaute Occasionnel
Re

Peux-tu m'expliquer ceux ci

Qu'entends-tu par :

C'est quoi le Contenu dans les colonnes 3,4,5
Qui doit permettre qu'on

Où ? Quand? ... Lol

Je n'ai peut -être pas Compris une évidence Lol
si c'est lors du remplissage du Calendrier (GTA) mettre le Commentaire en Comment de la Cellule ?
Jean Marie
Re,

C'est vrai que retranscrire par écrit c'est un peu compliqué lol

Je t'ai fait une capture d'écran pour mieux comprendre (enfin en gros)

Michel
 

Pièces jointes

  • Capture.JPG
    Capture.JPG
    493.3 KB · Affichages: 13

thunder23

XLDnaute Occasionnel
Bonsoir Michel

Peut-être en utilisant la Propriété "ControlTipText" des TextBox
Contrainte il n'affiche pas de Multilignes.
Voir vidéo
Jean marie
Bonsoir Jean-Marie,

Ah oui en effet ce n'est pas mal après c'est juste un récapitulatif et puis si ça permet d'englober les 3 colonnes ça me va nickel.
Par contre je ne connais pas du tout cette propriété, elle fonctionne comment ?

Michel
 

Discussions similaires

  • Résolu(e)
Microsoft 365 Taille UserForm
Réponses
3
Affichages
355

Statistiques des forums

Discussions
312 233
Messages
2 086 466
Membres
103 225
dernier inscrit
PAPA ALIOUNE HANE