Programme parcourir plusieurs tableaux Ecel
coudu
-
coudu -
coudu -
Bonjour,
, je dispose d’un classeur Excel, faisant office de base de données des pratiquants de sports dans une agglomération de ville.
Ce classeur est composé de plusieurs feuilles,
Feuille 1 : « Accueil »
Feuille 2 : « Foot »
Feuille 3 : Basket »
Feuille 4 : « Tennis»
Feuille 5 : « Handball »
Dans chaque feuille (a part celle d’accueille) j’ai le même tableau avec des colonnes intitulées :
A1 : Numéro de licence
B1 : Nom licencié
C1 : Nom club
D1 : Ville
E1 : Sport
J’aimerai que lorsque je tape un numéro de licence dans une cellule de la page d’accueil (exemple B2) et que je clique sur un bouton de commande alors les informations du tableau (Nom du licencié, Nom club, ville, Sport) soient récupérées dans cette même feuille d’accueille dans les cellules B2, C2, D2, E2 par exemple.*
En gros que toutes les feuilles soient parcourues pour trouver les informations voulues.
Je n’y arrive pas…
En espérant être clair…
Merci pour votre aide précieuse
, je dispose d’un classeur Excel, faisant office de base de données des pratiquants de sports dans une agglomération de ville.
Ce classeur est composé de plusieurs feuilles,
Feuille 1 : « Accueil »
Feuille 2 : « Foot »
Feuille 3 : Basket »
Feuille 4 : « Tennis»
Feuille 5 : « Handball »
Dans chaque feuille (a part celle d’accueille) j’ai le même tableau avec des colonnes intitulées :
A1 : Numéro de licence
B1 : Nom licencié
C1 : Nom club
D1 : Ville
E1 : Sport
J’aimerai que lorsque je tape un numéro de licence dans une cellule de la page d’accueil (exemple B2) et que je clique sur un bouton de commande alors les informations du tableau (Nom du licencié, Nom club, ville, Sport) soient récupérées dans cette même feuille d’accueille dans les cellules B2, C2, D2, E2 par exemple.*
En gros que toutes les feuilles soient parcourues pour trouver les informations voulues.
Je n’y arrive pas…
En espérant être clair…
Merci pour votre aide précieuse
A voir également:
- Programme parcourir plusieurs tableaux Ecel
- Programme demarrage windows - Guide
- Programme word gratuit - Guide
- Message programmé - Guide
- Tableaux croisés dynamiques - Guide
- Mettre en veille un programme - Guide
6 réponses
Bonjour
essaies cette macro que l'on pourra améliorer si tu le désires
essaies cette macro que l'on pourra améliorer si tu le désires
Sub chercher_valeur()
Dim licence
Dim nbre As Byte, cptr As Byte, lig As Long
licence = Sheets("acceuil").Range("B2")
nbre = ThisWorkbook.Sheets.Count
For cptr = 2 To nbre
With Sheets(cptr)
If Application.CountIf(.Columns(1), licence) > 0 Then
lig = .Columns(1).Find(licence, .Range("A1"), xlValues).Row
Sheets("acceuil").Range("C2:F2").Value = .Range(.Cells(lig, 2), .Cells(lig, 5)).Value
Exit Sub
End If
End With
Next
MsgBox "Numéro de licence " & licence & " inconnu"
With Sheets("acceuil")
.Range("B2:F2") = ""
End With
End Sub
curieux... chez moi ca fonctionne
ci joint ma maquette de travail
https://www.cjoint.com/?mrptfuixeE
si fonctionnement OK pour toi, on pourra passer en macro événementielle
ci joint ma maquette de travail
https://www.cjoint.com/?mrptfuixeE
si fonctionnement OK pour toi, on pourra passer en macro événementielle
Okay pour l'événementielle mais tout à l'heure ou demain, j'ai un petit truc à faire
tu regarderas et décideras si ça t'intéresse
ch'ai jamais comment écrire acceuil, pardon!accueil ;-)
tu regarderas et décideras si ça t'intéresse
ch'ai jamais comment écrire acceuil, pardon!accueil ;-)
ci joint la recherche par macro évnementielle:
https://www.cjoint.com/?mrtiZ63H48
lorsque tu écris dans B2 et que tu valides tu déclenche l'événement et la macro exécute la recherche sans avoir à cliquer sur un bouton
pour voir la b^te:
clic droit dans le nom d'onglet "accueil" (t'as vu le U !!!)
visualiser le code
tu es dans un module de feuille et tu as la liste des événements dans la liste déroulante de droite
tu as aussi des événement dans le module "thisworkbook" (dans l'éditeur vbe si tu n'a pas la fen^tre "projet"==> ctrl+R) clic dans liste de gauche puis de droite.
Dans module1 tu trouveras une petite macro très importante du fait de l'utilisation de enableevents car s'il y a coupure (souvent pendant les essais) les événements sont désactivés définitivement dans tout excel cette macro permet de réparer
Tu pourras trouver de la doc sur les événements dans cet excellent site pour apprendre VBA
http://www.info-3000.com/vbvba/evenementfeuilleclasseur.php
https://www.cjoint.com/?mrtiZ63H48
lorsque tu écris dans B2 et que tu valides tu déclenche l'événement et la macro exécute la recherche sans avoir à cliquer sur un bouton
pour voir la b^te:
clic droit dans le nom d'onglet "accueil" (t'as vu le U !!!)
visualiser le code
tu es dans un module de feuille et tu as la liste des événements dans la liste déroulante de droite
tu as aussi des événement dans le module "thisworkbook" (dans l'éditeur vbe si tu n'a pas la fen^tre "projet"==> ctrl+R) clic dans liste de gauche puis de droite.
Dans module1 tu trouveras une petite macro très importante du fait de l'utilisation de enableevents car s'il y a coupure (souvent pendant les essais) les événements sont désactivés définitivement dans tout excel cette macro permet de réparer
Tu pourras trouver de la doc sur les événements dans cet excellent site pour apprendre VBA
http://www.info-3000.com/vbvba/evenementfeuilleclasseur.php
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour, merci pour ton aide hier.
Dis comment fait on pour activer un bouton de commande d'une feuille excel à partir d'un bouton de commande d'userform.
je m'explique, j'ai créé un userform dans lequel je retranscrit les infos qui apparaissent sur la feuille d'accueil (truc1,truc2...)et j'aimerais que lorsque je tape le numéro de licence (dans le userform) alors les infos soient retranscritent dans ce user form dans des textbox.
j'arrive a recuper les infos dans la textbox mais j'arrive pas à lancer la recherche a partir de mon userform.
merci
Dis comment fait on pour activer un bouton de commande d'une feuille excel à partir d'un bouton de commande d'userform.
je m'explique, j'ai créé un userform dans lequel je retranscrit les infos qui apparaissent sur la feuille d'accueil (truc1,truc2...)et j'aimerais que lorsque je tape le numéro de licence (dans le userform) alors les infos soient retranscritent dans ce user form dans des textbox.
j'arrive a recuper les infos dans la textbox mais j'arrive pas à lancer la recherche a partir de mon userform.
merci
no compris ta question
tu lances ton userform
dans une textbox tu écris ton numéro de licence et quand tu valides la recherche se fait et inscrit les valeurs dans les autres textbox (ou labels)
pour écrire les codes dans l'userform, clic droit sur userform dans la fenêtre projet
mais je ne vois pas du tout où tu veux en venir finalement.... le code peut être complétement différent suivant ton objectif final. donc...
tu lances ton userform
dans une textbox tu écris ton numéro de licence et quand tu valides la recherche se fait et inscrit les valeurs dans les autres textbox (ou labels)
pour écrire les codes dans l'userform, clic droit sur userform dans la fenêtre projet
mais je ne vois pas du tout où tu veux en venir finalement.... le code peut être complétement différent suivant ton objectif final. donc...
dis ça marche pas, ça marque erreure d'exécution type 9.
Le message me dis que l'indice n'appartient pas à la séléction.
Cette ligne est coloriée:
lig = .Columns(1).Find(licence, .Range("A1"), xlValues).Row
Tu serai pourquoi?
merci