Microsoft 365 Code affichage

  • Initiateur de la discussion Initiateur de la discussion Marvin57
  • Date de début Date de début

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 !

Marvin57

XLDnaute Occasionnel
Bonjour tout le monde,

avant de commencer je vous souhaite à toutes et à tous une Bonne Année 2024, mais surtout une bonne santé et que cette année se déroulera sans trop de problèmes, car je pense que l'année passée nous a vraiment montré que notre quotidien peut changer très vite.

Alors voila ma demande;

dans ce fichier je peux ouvrir le UserForm1 à partir de l'onglet "ouverture".
Une fois ouvert, j'aurai voulu pouvoir choisir via le combobox1 le sujet qui se trouve dans le tableau structuré de l'onglet Feuil2 en colonne Z.

Une fois le sujet choisit en combobox1, il devrait m'afficher ce qui suit;

En textbox1 les données de la colonne AQ
En textbox2 les données de la colonne AR
En textbox3 les données de la colonne AU

J'espère avoir bien expliqué mon souhait.

Je vous remercie d'avance pour votre aide

Marvin57
 

Pièces jointes

Solution
Je viens de rajouter un textbox (textbox4) au UserForm1 (fichier ci-joint). Si je saisi donc le nombre dans ce textbox4, il devrait s'inscrire dans le tableau de l'onglet "TEST2" colonne "W" (AN).
La macro du bouton :
VB:
Private Sub CommandButton1_Click()
Dim i As Variant
With Sheets("TEST2")
    i = Application.Match(ComboBox1, .Columns("D"), 0)
    If IsNumeric(i) Then .Range("W" & i) = TextBox4
End With
End Sub
Bonjour @Marvin57
VB:
Private Sub ComboBox1_Change()
'En textbox1 les données de la colonne AQ
'En textbox2 les données de la colonne AR
'En textbox3 les données de la colonne AU
TextBox1 = Range("Tableau1[TEST1]").Cells(ComboBox1.ListIndex + 1).Value
TextBox2 = Range("Tableau1[TEST2]").Cells(ComboBox1.ListIndex + 1).Value
TextBox3 = Range("Tableau1[TEST3]").Cells(ComboBox1.ListIndex + 1).Value
End Sub

Private Sub UserForm_Activate()
'Une fois ouvert, j'aurai voulu pouvoir choisir via le combobox1 le sujet qui se trouve dans le tableau structuré de l'onglet Feuil2 en colonne Z.
ComboBox1.List = Range("Tableau1[SUJET]").Value
End Sub
 
Bonjour Marvin57, François, Patrick, le forum,

Merci pour vos bons vœux, à vous tous je souhaite une très bonne année 2024.

Placez dans le code de l'UserForm :
VB:
Private Sub ComboBox1_Enter()
ComboBox1.List = [Tableau1].Columns("Z").Resize(, 2).Value 'au moins 2 éléments
End Sub

Private Sub ComboBox1_Change()
Dim i&
TextBox1 = "": TextBox2 = "": TextBox3 = "" 'RAZ'
i = ComboBox1.ListIndex + 1
If i = 0 Then Exit Sub
With [Tableau1]
    TextBox1 = .Cells(i, "AQ")
    TextBox2 = .Cells(i, "AR")
    TextBox3 = .Cells(i, "AU")
End With
End Sub
A+
 
re
Bonjour @job75
meilleurs veux pour la nouvelles année la santé ,le bonheur
chez moi ta ligne ne fonctionne pas
normalement si 1 ligne c'est .column



demo.gif


normalement si 1 ligne c'est .column
sauf qu' avec ta ligne en remplacant .list" par " .Column" ca ne marche pas non plus
demo.gif



après j'avoue que les fichiers enregistrés en 365 me joue des tours de cochons sur 2013
 
Chez moi sur Win11 Excel 2019 ComboBox1.List va bien, ComboBox1.Column ne va pas.
Bonjour fanfan38, Patricktoulon et bonjour job75,


Merci également à vous pour les vœux de nouvel an.

Et Merci aussi pour vos réponses et vos solutions proposées.

Après les essais je vais garder la solution de job75 qui fonctionne sans bug. Merci à vous job75.

J'aurai une dernière demande à mon sujet;

Je viens de rajouter un textbox (textbox4) au UserForm1 (fichier ci-joint). Si je saisi donc le nombre dans ce textbox4, il devrait s'inscrire dans le tableau de l'onglet "TEST2" colonne "W" (AN).

Pourriez-vous S'il vous plaît m'aider pour ce code.

Merci d'avance.

Marvin57
 

Pièces jointes

re
c'est bon j'ai trouvé pourquoi ca ne fonctionnait pas
j'ai enregistré le fichier et j'ai donc perdu les formules 365
la colonne SUJET ETAIT EN ERREUR
VB:
Private Sub ComboBox1_Enter()
ComboBox1.List = [Tableau1[SUJET]].Resize(, 2).Value 'au moins 2 éléments
End Sub

Private Sub ComboBox1_Change()
Dim i&
TextBox1 = "": TextBox2 = "": TextBox3 = "" 'RAZ'
i = ComboBox1.ListIndex
If i = -1 Then Exit Sub
With [Tableau1].ListObject
    TextBox1 = .ListColumns("TEST1").Range(i + 2) '.Range(i + 2)
    TextBox2 = .ListColumns("TEST2").Range(i + 2)
    TextBox3 = .ListColumns("TEST3").Range(i + 2)
End With
End Sub
 
Je viens de rajouter un textbox (textbox4) au UserForm1 (fichier ci-joint). Si je saisi donc le nombre dans ce textbox4, il devrait s'inscrire dans le tableau de l'onglet "TEST2" colonne "W" (AN).
La macro du bouton :
VB:
Private Sub CommandButton1_Click()
Dim i As Variant
With Sheets("TEST2")
    i = Application.Match(ComboBox1, .Columns("D"), 0)
    If IsNumeric(i) Then .Range("W" & i) = TextBox4
End With
End Sub
 

Pièces jointes

La macro du bouton :
VB:
Private Sub CommandButton1_Click()
Dim i As Variant
With Sheets("TEST2")
    i = Application.Match(ComboBox1, .Columns("D"), 0)
    If IsNumeric(i) Then .Range("W" & i) = TextBox4
End With
End Sub
Re job75,

un GRAND MERCI à vous pour ce travail. 👍👍👍Tout fonctionne comme souhaité.

Merci aussi aux autres participants à ma demande. fanfan38, Patricktoulon.


Il va falloir que je m'y mette aussi un peu afin de mieux comprendre et apprendre un peu tout ce fonctionnement et ne pas toujours laisser le travail aux autres.🙃😉

Mais je vous dis quand même à bientôt peut-être.

Marvin57
 
- 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
5
Affichages
100
Réponses
4
Affichages
114
Réponses
13
Affichages
436
Réponses
9
Affichages
379
Retour