copier les résultats dans des cellules bien précises

Cercle

XLDnaute Nouveau
Bonjour à tous,

Je vous expose ci-dessous mon problème :


Sub Recherche()
'
' Recherche Macro
' Macro enregistrée le 02.12.2006 par Cercle
'
' Touche de raccourci du clavier: Ctrl+x
'
Dim Name As String
Name = "Jean"
Name = "Jacques"
Name = "Paul"


'Ici, je fais une recherche sur une liste déroulante
'et je reporte les résultats sur une autre feuille.
'J'aimerais copier chaque résultat dans un endroit
'bien précis de cette autre feuille, avant que
'la recherche suivante ne les efface.

'Je ne veux pas copier chaque résultat sur une
'ligne différente, mais dans des cellules bien précises
'que j'aimerais définir moi-même.


J'ai passé de nombreuses heures à chercher une solution. J'ai trouvé des
modèles complexes, mais rien qui puisse résoudre mon petit problème.

Mon niveau est débutant en VBA, bon en excel.

Merci d'avance à qui pourra bien m'aider

Cercle
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : copier les résultats dans des cellules bien précises

Bonjour Cercle, bonjour le forum,

Désolé Cercle mais je ne comprends rien ni à ton bout de code ni à ta question... C'est vrai que je ne suis pas une lumière mais là c'est carrément les ténèbres. Déjà ton code est étrange :
Code:
Dim Name As String
[COLOR=red]Name = "Jean"
Name = "Jacques"[/COLOR]
Name = "Paul"
car les lignes en rouge ne servent à rien puisdque tu redéfinis Name = "Paul" en dernier.


Je te conseille vivement de joindre un petit fichier exemple et d'être plus clair pour que l'on puisse t'aider rapidement.
 

Cercle

XLDnaute Nouveau
Re : copier les résultats dans des cellules bien précises

Salut Robert, Salut à tous,

Je remercie Robert pour sa réponse. Comme je n'ai pas été très explicite, je joins un fichier modèle avec l'explication des difficultés que je rencontre.

Encore merci à ceux et celles qui prennent le temps de répondre.

Cercle
 

Pièces jointes

  • Copie cellules à l'endroit désiré.zip
    21 KB · Affichages: 47
  • Copie cellules à l'endroit désiré.zip
    21 KB · Affichages: 46
  • Copie cellules à l'endroit désiré.zip
    21 KB · Affichages: 45

bqtr

XLDnaute Accro
Re : copier les résultats dans des cellules bien précises

Bonjour Cercle, Robert

Ton Fichier modifié.

J'ai ajouté une liste de validation dans la cellule B2 de la feuille 1.
Tu selectionnes un nom et la macro copie les données sur la feuille 2 à l'endroit adéquate.

Comme te disait Robert la déclaration de la variable Name était fausse, plutôt que de créer plusieurs variable avec les noms, j'ai opté pour la liste de validation.

Pour voir le code, clique droit sur l'onglet de la feuille 1 puis code.

En espérant que cela te convienne.

Bonne journée

P.O
 

Pièces jointes

  • Copie cellules à l'endroit désiré.zip
    21.6 KB · Affichages: 67
  • Copie cellules à l'endroit désiré.zip
    21.6 KB · Affichages: 69
  • Copie cellules à l'endroit désiré.zip
    21.6 KB · Affichages: 66

Cercle

XLDnaute Nouveau
Re : copier les résultats dans des cellules bien précises

Bonjour à bptr, à Robert, et au forum,

Un remerciement tout particulier à bptr pour l'aide qu'il m'apporte. Vraiment, je n'aurais jamais pensé qu'il me fasse un code VBA aussi parfait.

Encore deux petites questions. Comment as-tu fait pour que ta macro ne soit pas visible dans Outils / Macro et est-il possible de faire une macro pour le déroulement de toute la procédure. J'ai bien essayé sans réussir.

Encore mille merci et bonne journée.

Cercle
 

bqtr

XLDnaute Accro
Re : copier les résultats dans des cellules bien précises

Re bonjour,

La macro est liée à la feuille, elle utilise l'évenement worksheet_Change de cette dernière, c'est à dire qu'elle se déclenche dans ce cas, à chaque fois que tu modifies la valeur de la cellule B2. C'est pour ca qu'elle n'est pas dans un module et donc invisible par outils/macro.

En haut de la fenêtre du code, séléctionne dans la liste de gauche : worksheet, et dans celle de droite tu auras la liste des évenements liées à la feuille.

Quant à une seule macro pour toute la procédure, c'est faisable mais ca dépend de ce que tu veux faire. Dés fois c'est préferable de travailler avec plusieurs macros, c'est plus facile à modifier si tu souhaites faire évoluer ton projet.

Bonne journée

P.O
 

Cercle

XLDnaute Nouveau
Re : copier les résultats dans des cellules bien précises

Bonjour bqtr, bonjour tous,

Encore une fois, je me suis mal exprimé.

Surtout ne change rien à ta macro, elle est parfaite.

Ce que je voulais dire, c'est que je dois lancer ta macro environ 30 fois (j'ai autant de personnes différentes). N'y aurait t'il pas moyen, avec une autre macro de lancer toutes les requêtes en une seule fois.

Encore merci,

Cercle
 

bqtr

XLDnaute Accro
Re : copier les résultats dans des cellules bien précises

Re,

OK,
J'ai ajouté la liste des noms en F10 sur la feuille 1, et un bouton de commande.
Click dessus et tout se fera en une seule fois.

La première façon de procéder est toujours active.

A+

P.O
 

Pièces jointes

  • Copie cellules à l'endroit désiré.zip
    22.9 KB · Affichages: 50
  • Copie cellules à l'endroit désiré.zip
    22.9 KB · Affichages: 48
  • Copie cellules à l'endroit désiré.zip
    22.9 KB · Affichages: 48

Gruick

XLDnaute Accro
Re : copier les résultats dans des cellules bien précises

Bonjour Cercle et btqr

J'ai gardé l'esprit et la présentation et un petit peu adapté le beau code de btqr, de façon à ne pas revoir la macro si la liste du personnel grossit (variable plage) et ne pas se soucier de recopier une liste.
Si un nouveau, faire un petit tableau en feuil2 à la suite des autres.

Zippé sous mac, ajouter .xls une fois décompacté, ou ouvrir depuis excel, tous fichiers.

A suivre...sujet très intéressant

Gruick
 

Pièces jointes

  • Cercl.zip
    22.3 KB · Affichages: 46

bqtr

XLDnaute Accro
Re : copier les résultats dans des cellules bien précises

Bonsoir Gruick,

C'est vrai que c'est plus simple de partir de la liste sur la feuille 2, je n'y avait pas pensé.

Par contre si je peux me permettre le code du fichier joint bug chez moi,
car la variable c est déclarée en String.

Il faut donc modifier cette ligne : c As String par c As Range. Et là plus de problème ca fonctionne nickel.

Bonne soirée

P.O
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : copier les résultats dans des cellules bien précises

Bonsoir le fil, bonsoir le forum,

Désolé Cercle, je t'ai abandonné mais ce forum a ça de génial c'est qu'il y a toujours des Bqtr et autres Gruick pour «assurer». Je profite alors de ton fil pour les remercier d'avoir pris la relève et pour m'excuser de ne pas avoir donné suite.
 

Gruick

XLDnaute Accro
Re : copier les résultats dans des cellules bien précises

Bonjour au fil,
Robert, tu te fais plus rare ces temps-ci. (moi aussi).
Je me délecte de chacune de tes interventions, qui ne manquent jamais d'humour. Je suis de la même tribu.
Effectivement, btqr, c doit ranger son string, donc je vais la renommer q (!)
J'attends une réponse de Cercle, pour poursuivre.
Bonnes fêtes à tous,
Gruick

PS :
Il existe néanmoins le "Rapport de tableau croisé dynamique" du menu données qui fait ce que tu demandes en quelques clics de souris
 
Dernière édition:

Cercle

XLDnaute Nouveau
Re : copier les résultats dans des cellules bien précises

Bonjour à bqtr, à Gruick, à Robert ainsi qu'à vous tous du forum,

Une fois encore, un grand merci pour votre aide efficace.

Je peux vous assurer qu'il y a un grand nombre de personnes qui doivent traiter chaque mois des énormes fichiers excel alimentés par des bases de données via sql, et reporter le résultat dans des tableaux dont la mise en page est rigide. Ces données sont souvent triées par filtre et reportées par simple copier/coller, une vraie galère.

En ce qui me concerne, j'ai fait des macro qui me rendent bien service. Mais bon, comme je ne connais pas la programmation VBA, ce sont des macro à rallonge où je répète chaque fois les mêmes instructions en changeant uniquement quelques éléments. Pour ceux qui désirent comparer une macro débutant à une macro pro, je joins en annexe un exemple de ce que j’utilise. (le 1er fichier que j’ai envoyé est celui où je me testais au code VBA). Dorénavant, je vais modifier toutes mes macro et les adapter aux modèles bqtr et Gruick.

Pour répondre à Gruick, je suis bien d’accord avec toi. Je pense aussi que le sujet est intéressant et j’espère qu’un maximum de membres du forum en profitera. Par contre, je ne suis pas certain qu’un tableau dynamique croisé offre la même souplesse qu’une programmation VBA, notamment pour le report des résultats dans des tableaux qui ont été conçus par des personnes qui ne se sont pas souciées de savoir comment le travail allait être fait.

Robert, merci pour ton petit coucou et bqtr, merci pour avoir mis ton message au sujet du Range au lieu de String au moment même ou j’étais en train de tester la macro que je trouve conviviale et rapide (plous ça va vite, plous ça me plait) de Gruick.

Salutations

A+
Cercle
 

Pièces jointes

  • Cercle macro débutant.zip
    24.8 KB · Affichages: 39

Gruick

XLDnaute Accro
Re : copier les résultats dans des cellules bien précises

Bonjour Cher Cercle,
(Plus facile à écrire qu'à dire),

Je te remercie vivement de tes compliments, mais le plus impliqué et méritant est btqr, initiateur de la méthode.

Tu ne nous as pas spécifié quel mois était concerné, dans quelle cellule tu le spécifies, donc on s'est arrêté là. Alors, si tu veux un compément...
A plus,

Gruick
 

Discussions similaires

Statistiques des forums

Discussions
312 177
Messages
2 085 976
Membres
103 077
dernier inscrit
kamel26asus