Recherche + copier coller avec plusieurs résultats

Bonjour,

je suis à la recherche d'une formule sur excel 2003

voici mon exemple:

dans la feuille 1 j'ai un tableau:

........A ........B.........C

1....15/2........r .........8

2....15/2........n .........9

3....15/2........p..........5

4....16/2.........t..........6

dans la feuille 2: une réfférence :

15/2

16/2

16/3

17/3

18/3

19/3

Maintenant j'aimerai dans une troisième feuille faire dans une celulle une formule qui me permets de rechercher dans la feuille 1 la réference 15/2 (de la feuille 2) et copier les lignes 1.2 et 3 (de la feuille 1) dans les celulles a1, a2 a3 (de cette feuille 3 )

j'y arrive avec la fonction recherchev mais il me recopie la ligne 1 et pas la 2,3

Merci de votre aide amicalement André

Bonjour Lonneux et ,

Je ne suis pas sûr d’avoir bien compris ce que tu cherches à faire.

La prochaine fois, pense à joindre un exemple, ça aide pour la compréhension du problème.

40exemple.xlsx (9.54 Ko)

A+

Merci je vais joindre un exemple j'espère que cela va vous aider

Merci encore à vous

33exemple1.xlsx (11.04 Ko)

bonjour

un essai (mais je ne vois pas l'interet de la feuille 2 car la liste peut tres bien etre tirée directement du tablo en feuille 1 )

55lonneux.zip (4.66 Ko)

cordialement

je te remercie Tulipe

si vous voulez je vous enverrai mon tableau complet lundi mais vos réponses me sont d'une grande utilité

Amicalement André

Bonjour,

Encore merci pour votre aide et comme promis voici mon tableau et mon problème

Explication de mon tableau :

Feuil 1 (Master) = un plan de planification d’entretien de machines avec en colonnes :

Colonne A : Dates planifiées de base

Colonne L --> BL : Les dates qui se planifient via une formule

Feuil 2 (Légende) avec :

Colonne A : Une date

Colonne B : La semaine correspondante à la date

Feuil 3 --> ….. : Les semaines (182013 = semaine 18 de 2013 correspondant aux dates du 30/04/2013 au 05/05/2013) ou j’aimerai faire apparaitre les lignes de la feuil 1

Le but est que quand on ouvre l’onglet 182013 apparaisse tous les entretiens à faire la semaine 18 de 2013.

En recherchant les dates de la feuil Master (faire un copier coller des lignes de la feuil 1 dans la 182013 si une date correspond

En bref faire faire une recherche via la légende dans le master et copier les lignes retrouvées dans la feuil 182013

Merci de votre aide

Amicalement André

Bonjour à tous,

une solution en VBA.

La date prise en compte est celle de la colonne A de la feuille Master.

Les résultats sont recalculés automatiquement chaque fois que l'on clique sur l'un des onglets.

Résultats non vérifiés.

Merci Game Over mais je n'arrive pas à ouvrir les fichiers rar.

Amicalement André

sans doute parce que tu n'as pas installé le programme :

http://www.clubic.com/telecharger-fiche9632-winrar.html

cela marche parfaitement game over je te remercie et peux tu me dire si maintenant je rajoute des oglets (222013,232013,242013 ......) comment faire pour que ton travail se répette

merci infiniment

Tu n'as qu'à créer les nouveaux onglets sur le modèle de ceux déjà existants... tout le reste se fera tout seul.

Ajoute d'abord l'onglet, puis copie l'en tête et finis par renommer l'onglet.

Un grand merci game over super chouette de ta part

une dernière chose pour que mon tableau soit complet:

ici la recherche ce fait sur la colonne A du master si je veux y ajouter les colonnes L,M,N ....... du Master, que dois je changé?

Sub Copie()

Dim derLig As Long, myRange As Range, aa As String, derCol As Integer, Sh As Worksheet, lRow As Long, lCol As Integer

Application.ScreenUpdating = False

For Each Sh In Sheets

With Sh

If .Name <> "Master" And .Name <> "Légende" Then

If Not IsEmpty(.Range("A2")) Then

lRow = .Cells.Find("*", , , , xlByRows, xlPrevious).Row

.Range(.Range("A2"), .Cells(lRow, 1)).Rows.EntireRow.Delete

End If

End If

End With

Next Sh

On Error Resume Next

With Sheets("Master")

derLig = .Range("A" & Rows.Count).End(xlUp).Row

For a = 2 To derLig

Set myRange = Sheets("Légende").Columns(1).Find(.Cells(a, 1), , xlValues, xlWhole)

If Not myRange Is Nothing Then

aa = myRange.Offset(, 1) & Year(myRange)

derCol = .Cells(a, Columns.Count).End(xlToLeft).Column

If Not Sheets(aa) Is Nothing Then

.Cells(a, 1).Resize(, derCol).Copy Destination:=Sheets(aa).Range("A" & Rows.Count).End(xlUp).Offset(1, 0)

End If

End If

Next a

End With

On Error GoTo 0

Application.ScreenUpdating = True

End Sub

Un tout grand merci

bonjour

je n'ai fait que pour 182013 en essai pour voir

si ok on poursuivra

12lonneux2.zip (53.53 Ko)

cordialement

oups j'avais laissé ouvert le sujet toute l'aprem sans voir que game over etait de la partie tant pis ce sera pour les "interdits de vba"

Salut Tulipe... je me suis arrivé après les autres sur ce coup là

@Lonneux :

voilà ce que ça donnerait, si j'ai bien compris... par contre le nombre de calcul est 4 fois plus important, donc chaque fois que tu changes d'onglet, tous les calculs sont réeffectués, on peut donc :

  • laisser les choses en l'état.
  • ne faire q'une mise à jour à chaque ouverture du classeur, par exemple.
  • mettre en place une mise à jour manuelle.

à toi de me dire.

nouveaux résultats non vérifiés

bonjour,

un grand merci au travail que vous faites, avec le vba cela fonctionne très bien il ne me reste plus qu'un problème c'est que La date prise en compte est celle de la colonne A de la feuille Master et que j'aimerai ajouté les colonnes L,M,N, .... du Master qui sont les dates reports de la colonne A

encore un grand merci André

Salut,

voici la modif faite selon tes besoins... non vérifié.

Rechercher des sujets similaires à "recherche copier coller resultats"