Macro Recherche Excel

Fermé
Dimit - 9 déc. 2010 à 14:54
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 14 déc. 2010 à 12:06
Bonjour,

J'ai une feuille excel de 4500 lignes dans lequel se trouve des tableaux de 16 lignes.
dans chaque tableau se trouve un numéro propre à lui.
Comment créer une macro Pour qu'en tapant ce numéro , le tableau correspondant apparaisse et que je ne doive pas faire défiler les 4500 lignes pour le trouver..

Merci Beaucoup



6 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
9 déc. 2010 à 16:04
Bonjour
Où se trouvent les numéros de tableau ?

Sans renseignement précis, difficile de proposer qq chose

Au besoin, mettre un extrait du classeur sans données confidentielles en pièce jointe (format XL97-2003) sur
http://cijoint.fr/
et coller le lien proposé dans le message de réponse
0
Je joins un fichier d'exemple pour être plus clair.

http://www.cijoint.fr/cjlink.php?file=cj201012/cijSefQzeb.xls

Dans la feuille CALC se trouve tous les tableaux pré-cités ci-dessus. j'en ai laissé juste 4 , vu que si ca marche avec 4 ca marchera avec 400...
en G4 se trouve une liste déroulante de tous les numéro associé à chaque tableaux ( le numéro du tableau se trouve en colonne D , la case est remplie en gris.)
Comment faire pour qu'en choisissant un compte dans la liste déroulante le tableau apparaisse ( ou plutot que la feuille défile jusqu'à lui).

Ca vous inspire plus?
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 10/12/2010 à 12:18
bonjour

Il faut que tu figes au préalable les volets sur la ligne 5 ou 6

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Target.Address = "$G$4" And Target.Count = 1 Then 
    lig = Columns("D").Find(numero, Range("D1"), xlValues).Row 
    Application.Goto Cells(lig, 1), True 
End If



comment installer ?
copier cette macro
clic droit sur le nom de l'onglet de la feuille concernée (en bas de l'écran)
visualiser le code
coller
si tu n'as jamais utilisé de macros, cocher menu options-macros-sécurité- niveau moyen

Michel
Vous programmez en VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...(P. Fauconnier/dvp)
0
Merci Michel mais ca ne marche pas .

Quand je la colle et que je clic sur enregistrer j'ai un message d'erreur suivant:
"Les fonctionnalités suivantes ne peuvent pas être enregistrées dans des classeurs sans macros :
- Projet VB
Pour enregistrer un fichier avec ces fonctionnalités cliquez sur non, puis selectionnez un type de fichier qui prend en charge les macros."

Le truc c'est que j'ai cocher la case : activer toutes les macros(non recommandé;risque d'exécution de code potentiellement dangereux)

j'ai pas trouvé ton macros-sécurités-niveau moyen...

et une autre question au passage , est ce que l'on peut faire un tableau croisé dynamique avec deux source de données sur deux pages différentes?

merci pour ton aide précieuse
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
10 déc. 2010 à 16:44
fait sur XL2003 et ca fonctionnait (je teste avant de proposer)
Jamais vu ça depuis le temps que je bidouille sur Excel.... :-/

??? Ca vient peut-^tre de ta configuration et si tu es au boulot, les admin ont peut ^tre brider les macros
pour les TCD la réponse est oui mais lance une nouvelle discussion dans le forum bureautique
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
10 déc. 2010 à 16:53
Un truc que je viens de voir à essayer (me dire le résultay)

outils-macro-sécurité-éditeurs
cocher "faire confiance au projet VB":

mais je n'y crois oas trop...
0
En enregistrant le fichier en classeur excel prenant en charge les macros je peux l'enregistrer.
Maintenant j'ai tjs un problème,
je la colle la macro, j'enregistre la fenêtre puis la ferme, mais quand je déroule la liste et que je choisis un compte, ca me dit" erreur de compilation : End sub attendu. puis ca ré-ouvre la fenêtre et souligne en jaune la première ligne de la macro.
je fais encore une fausse manip??
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
13 déc. 2010 à 22:45
bonjour,

ajoute
End sub

en dernière ligne de la macro
0
C'est fait. maintenant j'ai plus de message d'erreur mais par contre rien ne se passe quansd je choisi un nombre dans la liste déroulante.
et quand je vais dans l'onglet développeur afficher macros y a aucune macro...
avant de faire clic droit sur l'onglet visualiser le code, je dois me mettre sur la cellule de la liste déroulante?
Quand j'ai coller la macro dans la fenêtre, je dois faire quoi? cliquer sur enregistrer et fermer la fenêtre?
un autre truc élémentaire que j'ai oublié?

mercii
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
14 déc. 2010 à 09:35
Bonjour,
Je suis sous XL2003 mais normalement cela marche sous 2007

mis à part le mauvais copier-coller (end sub) j'avais testé ma macro avant de la proposer et elle fonctionnait...
0
Et si tu me renvoyais le fichier avec la macro?
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
14 déc. 2010 à 12:06
re,
je ne l'ai pas conservé...
0