clik sur onglet qui change selection de listbox1

papapaul

XLDnaute Impliqué
:( Bonsoir Forum
Pas pensable, j'y arrive plus. A l'ouverture,
Je clique sur un onglet, l'usf apparaît avec le nom des
feuilles en listbox1 et les colonnes en listbox2.
Sur cette liste, je choisis un nom,
ca m'active bien la feuille voulue.
Je ferme l'usf et si je clique un autre onglet.
Je veux que la listbox1 selectionne bien le nom de ce dernier
et evidemment que la listbox2 corresponde.
Ca doit pas être sorcier mais je patauge
comme un imbécile. :confused:
La correspondance marche bien
mais c'est pas avec la bonne feuille.
Je voudrais aussi qu'on puisse changer de feuille et donc
le contenu des listes sans être obligé de fermer l'usf.
Plus j'essaye, plus je m'enfonce.:mad:
Faut faire quelquechose dans thisworkbook mais
je suis paumé.
Merci à ceux qui ont la solution, j'en peux plus.
Bonsoir à tous:rolleyes:
 

Pièces jointes

  • ClICKONGLET_CHANGELISTBOX.xls
    41 KB · Affichages: 48
  • ClICKONGLET_CHANGELISTBOX.xls
    41 KB · Affichages: 54
  • ClICKONGLET_CHANGELISTBOX.xls
    41 KB · Affichages: 53

pierrejean

XLDnaute Barbatruc
Re : clik sur onglet qui change selection de listbox1

bonsoir papapaul

ca va comme ça ?
 

Pièces jointes

  • ClICKONGLET_CHANGELISTBOX.xls
    35.5 KB · Affichages: 65
  • ClICKONGLET_CHANGELISTBOX.xls
    35.5 KB · Affichages: 66
  • ClICKONGLET_CHANGELISTBOX.xls
    35.5 KB · Affichages: 68

papapaul

XLDnaute Impliqué
Re : clik sur onglet qui change selection de listbox1

:rolleyes: Bien sur que ca va, merci tout plein,

C'était donc tout simplement la :

Public Sub Workbook_SheetActivate(ByVal Sh As Object)
Unload UserForm1
UserForm1.Show
End Sub

Mais comme tu l'a forcement remarqué, je me suis
complétement "enferré" dans les codes du gros projet
que je suis en train de terminer.

Je voudrais pas abuser mais, justement dans ce projet,
je cree une feuille "liste" ou disparait l'usf.
je voudrais donc permettre à l'utilisateur de changer de feuille
en cliquant sur son onglet et que l'usf redevienne visible mais
initialiser avec la feuille "cliquée".

J'ai trouvé ca mais c'est pas concluant.

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim adresse As String, feuille As String
If Sh.Name = "Liste" Then
adresse = Target.Value: feuille = Range("A1").Value ' Recup des données
Application.EnableEvents = False ' Annuler l'intercepteur d'évennement
If Target.Value <> "" Then
Sheets(Range("A1").Value).Select ' Selection de la feuille
Sheets(feuille).Range(adresse).Select ' Selection de la cellule
Selection.Interior.ColorIndex = 33
End If
Application.EnableEvents = True ' Remise en place de l'intercepteur devennement
End If
IniListBox1
End Sub

Si tu as le temps ou le courage, milles merci d'avance

Bonne soirée:)
 

papapaul

XLDnaute Impliqué
Re : clik sur onglet qui change selection de listbox1

:eek: Re bonsoir tous
Je me permets de remettre une nouvelle version de l'usine.
Ce sera plus clair j'espère.
Grace à Pierrejean, le tri de la listbox3 est ok.
J'ai réussi à mettre des messages d'alerte cohérents
(si pas de doublons ou pas de sélection).
Reste le problème exposer ci dessus.
Quand je mets ;
Unload UserForm1
UserForm1.Show

dans, Public Sub Workbook_SheetActivate(ByVal Sh As Object)
Ca marche bien avec le fichier du post précedent
mais pas avec mon fichier joint ici.
Ca bug sur cette ligne For C = 1 To UBound(Entete, 2)
dans inilistbox2 :confused: j'arrive pas à corriger. Donc si je change rien
et si je fais pas attention, il peut y avoir des incohérences
entre la feuille active et l'alimentation des listbox.
Si je trouve l'astuce, cette version simplifiée sera terminée.
Sauf un petit truc, une fois la feuille liste cree et un premier retour adresse
avec couleur fait, ce serait bien de pouvoir retourner sur la feuille liste
pour choisir une autre cellule et mettre en couleur aussi sans que l'usf
se remette sur la feuille liste. (perfectionnisme :rolleyes: )J'y réfléchis.:p
Excusez tout ce laïus mais c'est pas facile à expliquer mon truc.
Si un courageux trouve le moyen de m'éclairer
Merci d'avance.
Bonne soirée sur XLD
 

Pièces jointes

  • Feuille_Liste_listbox3_tri_xld.zip
    43.8 KB · Affichages: 26
  • Feuille_Liste_listbox3_tri_xld.zip
    43.8 KB · Affichages: 26
  • Feuille_Liste_listbox3_tri_xld.zip
    43.8 KB · Affichages: 24

papapaul

XLDnaute Impliqué
Re : clik sur onglet qui change selection de listbox1

:eek: Bonjour Forum, j'ai un peu avancé, presque finie mon usine.
Je rappelle le principe : comparer les items d'une sélection
par rapport à l'ensemble d'une feuille,
détecter les doublons pour les mettre en couleurs.
En fonction des résultats j'imprime ou non et ensuite
je fais une autre sélection, etc...

Avec la liste détail et mes msg je pense que c'est bon.
Les mises en couleur aussi.
Tout à l'air de fonctionner sauf un détail important pour moi.
Je crée ma feuille liste selon la sélection de la feuille Donald par exemple.
je choisis les "adresses" 1 par 1, ca met la couleur dans cette feuille
sans mettre l'usf pour bien voir le résultat. C'est ce que je veux, OK.
Seulement, une fois fini ce choix, je clique sur une autre feuille
ici Dalton, pour faire apparaître l'usf et faire une autre sélection,
les listes feuilles et colonnes restent avec les données de la
feuille précédente (donald). :confused:
Je voudrais qu'elles s'"initialisent" avec Dalton.

Je vous embête encore avec ca (potdecolle papapaul ??:eek: )
y a kekchose à faire avec thisworbook, mais j'y arrive vraiment pas.

Je désespère pas mais ma comprenette atteint ses limites.
Merci à ceux qui auront le temps de jeter un oeil.
Sinon c'est pas trop grave, en faisant un peu attention
je pense que ca marche pas si mal.

Bonne journée à tous
Tant mieux pour ceux qu'ont du soleil, par chez moi,
c'est des sieaux d'ieau.
Vive XLD
 

Pièces jointes

  • Usine simplifiée.zip
    47.2 KB · Affichages: 23
  • Usine simplifiée.zip
    47.2 KB · Affichages: 23
  • Usine simplifiée.zip
    47.2 KB · Affichages: 24

pierrejean

XLDnaute Barbatruc
Re : clik sur onglet qui change selection de listbox1

bonjour papapaul

1er point

l'erreur sur for C= .....
intervenait lors de la création de la feuille Liste avant même qu'elle ne soit nommée et evidemment vierge .La saisie de la 1ere ligne d'en tete n'etait donc pas possible

d'ou la correction :

If Left(Sh.Name, 5) <> "Feuil" Then
Unload UserForm1
UserForm1.Show
End If

2eme point:

je n'ai pas vraiment saisi ce que tu souhaites
peux-tu expliciter STP
 

Pièces jointes

  • Feuille_Liste_listbox3_tri_xld.zip
    34.1 KB · Affichages: 29
  • Feuille_Liste_listbox3_tri_xld.zip
    34.1 KB · Affichages: 29
  • Feuille_Liste_listbox3_tri_xld.zip
    34.1 KB · Affichages: 33

papapaul

XLDnaute Impliqué
Re : clik sur onglet qui change selection de listbox1

:) Bonjour Pierrejean,
Tout d'abord, tu me conseille :
If Left(Sh.Name, 5) <> "Feuil" Then
Unload UserForm1
UserForm1.Show
End If
Je comprends pas pourquoi 5, j'ai essayé avec 6 ou 2 ou 10
ca ne marche plus :confused:

Bon si je laisse 5 et que je met exactement ca :

Public Sub Workbook_SheetActivate(ByVal Sh As Object)
'If UserForm1.Visible = False Then UserForm1.Show
'If UserForm1.Visible = True Then
With ActiveSheet
.Range(Cells(2, 1), Cells(Range("a65536").End(xlUp).Row, Range("IV1").End(xlToLeft).Column)).Interior.ColorIndex = -4142
End With
'End If
If Left(Sh.Name, 5) <> "Feuil" Then
Unload UserForm1
UserForm1.Show
End If
End Sub

Mes listes s'initialisent bien mais du coup ca mais la pagaille
dans mes msg et l'usf réapparaît pas comme je voudrais.
Comme tu dis, j'essaye "d'expliciter"
Ce que je voudrais, c'est que une fois ma sélection faite pour une feuille
et la feuille liste crée, l'usf n'apparaissent plus sur ces feuilles
pour que je vois bien le résultat et éventuellement imprimer.

Dans mon usine j'y suis arriver en mettant ca :
pas terrible mais j'ai pas trouver mieux.

Public Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Name = "Liste" Then
If UserForm1.Visible = True Then UserForm1.Hide
Else

If UserForm1.Visible = False Then UserForm1.Show
If UserForm1.Visible = True Then
With ActiveSheet
.Range(Cells(2, 1), Cells(Range("a65536").End(xlUp).Row, Range("IV1").End(xlToLeft).Column)).Interior.ColorIndex = -4142
End With
End If
End If
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim adresse As String, feuille As String
If Sh.Name = "Liste" Then
adresse = Target.Value: feuille = Range("A1").Value ' Recup des données
Application.EnableEvents = False ' Annuler l'intercepteur d'évenement
If Target.Value <> "" Then
Sheets(Range("A1").Value).Select ' Selection de la feuille
On Error Resume Next
Sheets(feuille).Range(adresse).Select ' Selection de la cellule
Selection.Interior.ColorIndex = 33
UserForm1.Hide
End If
Application.EnableEvents = True
' Remise en place de l'intercepteur d'évenement
End If
'Unload UserForm1
End Sub

Par contre, ensuite, si je décide de faire une sélection avec une autre feuille
en cliquant son onglet, l'usf revient mais pas avec les bonnes listes.
Donc faudrait associer ta méthode qui initialise bien les listbox à
l'apparition du usf avec 1click sur un onglet et la mienne qui permet de cacher l'usf pour bien voir toutes les adresses de la feuille liste et de la feuille ou je met la couleur.

J'espère que mes "explicitations" te seront compréhensibles.

Précision : j'essaye de faire ca parceque en vrai, je mets des feuilles
qu'on me transmets dans un seul classeur et que en fonction des saisies,
c'est à moi de décider si les doublons sont logiques ou non.
J'ai donc besoin de bien voir les anomalies, faire les modifs nécessaires
ou pas, et ensuite retourner les feuilles à l'expéditeur.

Pourvu que tu comprennes ce je souhaite.

Merci à toi et au forum en général. ;)
 

pierrejean

XLDnaute Barbatruc
Re : clik sur onglet qui change selection de listbox1

bonjour papapaul

suite a repas fort convivial et très correctement arrosé , pas la pleine forme !!!

alors pourquoi 5 ?

parceque Feuil comporte 5 caracteres (les 5 1ers caracteres a gauche(left) de toute nouvelle feuille créée avant qu'elle ne soit renommée Liste

pour le reste je regarde mais n'attend pas trop de reponse avant demain !!!
 

papapaul

XLDnaute Impliqué
Re : clik sur onglet qui change selection de listbox1

:) Sacré Pierrejean,
T'inquiète pas , c'est normal, la convivialité d'abord.
Arrosée dans tous les sens aujourd'hui:D
Moi ce soir, mes 52 balais :mad: alors tu vois,
je rame, je rame mais
la cave va se vider quand même.
En attendant l'apéro, pour me détendre je fais
quelques petites parties de go.
A demain remettre XLD sur le métier.
Amitiés à tous.;)
 

jeanpierre

Nous a quitté
Repose en paix
Re : clik sur onglet qui change selection de listbox1

Bonsoir à tous, papapaul, pierrejean, écétéra.....

Si j'ai bien compris.... bon anniv... papapaul....

Bof, 52, c'est gamin..... non...?

Tu nous dis à quelle heure on vient et c'est parti.... J'arrive....

Bonne soirée à toi et à tous....

Jean-Pierre
 

pierrejean

XLDnaute Barbatruc
Re : clik sur onglet qui change selection de listbox1

bonjour papapaul

et bon anniversaire gamin (j'avais deja de la moustache que tu n'etais pas né)

vois si cela te convient

une fonction pour savoir si la feuille Liste existe:

Code:
Function listexiste() As Boolean
listexiste = False
For N = 1 To Sheets.Count
If Sheets(N).Name = "Liste" Then listexiste = True
Next N
End Function

son utilisation :

Code:
If Left(Sh.Name, 5) <> "Feuil" And Not listexiste Then
  With ActiveSheet
    .Range(Cells(2, 1), Cells(Range("a65536").End(xlUp).Row, Range("IV1").End(xlToLeft).Column)).Interior.ColorIndex = -4142
  End With
'End If
  Unload UserForm1
  UserForm1.Show
End If

enfin mise en commentaire de

'.UsedRange.Interior.ColorIndex = -4142

dans

Private Sub Label24_Click()
 

Pièces jointes

  • Feuille_Liste_listbox3_tri_xld.zip
    38 KB · Affichages: 27
  • Feuille_Liste_listbox3_tri_xld.zip
    38 KB · Affichages: 23
  • Feuille_Liste_listbox3_tri_xld.zip
    38 KB · Affichages: 33

papapaul

XLDnaute Impliqué
Re : clik sur onglet qui change selection de listbox1

:) Bonjour Forum, Pierrejean,
J'ai bien regardé tout ca, mais...y a un hic
Je crée la feuille Liste et met les couleurs sur
la feuille d'ou viens la sélection, ca va..
Le Usf n'apparait pas sur ces 2 feuilles, c'est ce que je veux.
Mais quand je change de feuille avec click sur l'onglet
pour faire une autre sélection
le USF revient pas ?? :confused:
Y a que ca qui me gêne sinon ce serait terminé.
Merci à tous ceux qui m'ont aider
Bonne journée.
 

papapaul

XLDnaute Impliqué
Re : clik sur onglet qui change selection de listbox1

:eek: Excusez moi d'insister mais 'j'enrage furieusement.
Voici donc une version précédente avec le timer (merci Pierrejean)
qui est tout pres mais vraiment tout tout tout pres
d'être finie.
1 seul truc m'ennuie.
Je voudrais changer de sélection sans fermer le classeur.
Donc voila ce qui cloche.
En faisant reapparaître l'usf avec un click sur un onglet,
les listes feuille et colonnes restent avec la sélection précédente.
Faudrait qu'elles soient mises à jour en fonction
de l'item de l'onglet de la feuille "clickée".
J'ai déja essayé d'expliquer plusieurs fois mais même avec
les modifs de Pierrejean ou mes multiples essais j'y arrive pas.:confused:
Faut que je clique dans le listbox1 pour que les bons en-tête
de colonnes se mettent en listbox2.
Ce n'est surement qu'un détail mais ca m'agace prodigieusement
de pas arriver à faire ca automatiquement.
Sinon je serais complétement satisfait.
Je desespère pas mais j'en ai mal aux cheveux.
Merci à tous de votre aide et votre patience.
Vive XLD
 

Pièces jointes

  • Usine simplifiée_avectimerv2.zip
    48.7 KB · Affichages: 22
  • Usine simplifiée_avectimerv2.zip
    48.7 KB · Affichages: 19
  • Usine simplifiée_avectimerv2.zip
    48.7 KB · Affichages: 18

pierrejean

XLDnaute Barbatruc
Re : clik sur onglet qui change selection de listbox1

bonjour papapaul

cette version presente un avantage : elle réalise ce que tu souhaites pour les initialisations des combobox
je suis persuadé qu'il faut partir de la
maintenant il faut me faire part de ce qui cloche par ailleurs afin d'arriver au but

edit: changement de fichier
 

Pièces jointes

  • Usine simplifiée_avectimerv2.zip
    44.6 KB · Affichages: 25
  • Usine simplifiée_avectimerv2.zip
    44.6 KB · Affichages: 23
  • Usine simplifiée_avectimerv2.zip
    44.6 KB · Affichages: 27
Dernière édition:

papapaul

XLDnaute Impliqué
Re : clik sur onglet qui change selection de listbox1

:rolleyes: Salut tous, Pierrejean
Merci pour ce travail et ton infinie patience.
J'ai vu le Call Ini.
Ca a bien l'air ok pour les combobox (listes)
c'est bien ce que je voulais.
Donc je choisis une feuille et des colonnes, je fais OK
je clique une adresse de la feuille liste, je reviens bien
sur la feuille de départ avec la couleur sur la cellule voulue,
Mais évidement y a un mais, si je veux faire cette manip
une seconde fois avec une autre cellule, du coup la couleur
ne fonctionne plus.
Dans les versions précédentes je pouvais mettre les cellules
en couleur 1 par 1 sans problème.
Screugneugneu, c'est ou ce qui gêne ??:mad:
On va bien y arriver bon sang de bonsoir.
 

Discussions similaires

Statistiques des forums

Discussions
312 229
Messages
2 086 423
Membres
103 206
dernier inscrit
diambote