Filtre + Collage (avec liaison)

nara

XLDnaute Nouveau
Salut,

j'ai un fichier à plusieurs feuilles, de type liste d'objets + renseignements (sur la ligne de l'objet).

je fais un filtre dans une feuille pour garder que certains objets, et j'aimerai coller une liste d'informations sur les cellules affichées apres le filtre. Seulement quand je colle, ca colle aussi dans les cellules cachées.

ex : si mon filtre contient les lignes 1,2,5 et que ma liste contient 3 lignes. quand je colle la liste, seulement les lignes 1,2 sont remplies. et quand j'enleve le filtre la ligne 3 a la derniere valeur de ma liste (alors qu'elle devrait etre en 5).:confused:


Sur le net j'ai retrouvé beaucoup de post avec ce probleme mais aucun n'a la solution, peut-etre que vous l'avez !?
 

Softmama

XLDnaute Accro
Bonjour Nara,

En supposant que A1 soit une des cellules de ton tableau filtré, pour copier les cellules qui sont visibles uniquement, tu peux faire ceci (Dans cet exemple les données sont copiées en cellule K1
Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Copy Destination:=Range("K1")
 

nara

XLDnaute Nouveau
Re : Filtre + Collage (avec liaison)

Salut Softmama,

je te remercie pour ta réponse express mais je vais réexpliquer mon probleme :) ce ne sont pas des cellules visibles que je veux copier, c'est une liste que je veux copier uniquement dans des cellules visibles (de mon filtre).

En gros j'ai une liste de 52 lignes en Feuil1, je veux coller cette liste dans les cellules visibles d'un filtre en Feuil7. Mais quand je colle à partir de Feuil7!R11, mon collage est effectué sur les 53 lignes suivantes, de R11 à R63, comme si je collais sans le filtre.

Est-ce plus clair maintenant ?
 

Softmama

XLDnaute Accro
Re, Ha ok, un peu plus clair

VB:
Sub test()
Dim c As Range, d As Range
    Set d = Sheets("Feuil7").Range("R11") 'Début de la zone de destination
    Set c = Sheets("Feuil1").Range("A2") 'A adapter l'adresse de la 1ère cellule de ton tableau à copier
    Do While c <> ""
        Do While d.EntireRow.Hidden = True
            Set d = d(2, 1)
        Loop
        c.Resize(, 8).Copy Destination:=d 'A adapter si y a pas 8 colonnes à copier
        Set d = d(2, 1)
        Set c = c(2, 1)
    Loop
End Sub
 

nara

XLDnaute Nouveau
Re : Filtre + Collage (avec liaison)

Re,
je cherchais plutot une astuce, ou une formule étant donné que je n'ai encore jamais touché à VBA et que celui qui a créé le fichier a l'air d'avoir vérouillé le code :p

Merci en tout cas !
 

lelectricien

XLDnaute Junior
Re : Filtre + Collage (avec liaison)

Bonjour,

J'ai une question concernant la macro qui a été donné çi-dessus: Comment fait-on pour coller avec liaisons?
J'ai essayé en y insérant ActiveSheet.Paste Link:=True mais ca ne marche pas: j'ai l'erreur 1004 qui apparait..

Pourriez-vous m'aider s'il vous plait?
 

Discussions similaires

Statistiques des forums

Discussions
312 412
Messages
2 088 196
Membres
103 763
dernier inscrit
p.michaux