VBA condition copie colle

eramond

XLDnaute Junior
Bonjour le forum

Encore un copier coller mais avec des conditions.

Je souhaite copier coller des cellules dans un autre feuille mais avec des conditions :

J'avais bricolé cette formule mais je souhaite l'optimiser :

PHP:
Sub Copy_paste()
'
    Dim WsScr As Worksheet, WsDest As Worksheet, MaPlage As Range
 
    Set WsScr = Worksheets("Données")
    Set MaPlage = WsScr.Range("A2:I4000").SpecialCells(xlCellTypeVisible)
    ' special cell ne copie que les cellules visibles a enlever si on veut tout'
  
     
  ' colle dans feuille prédéfinie'
  
    Set WsDest = Worksheets("DV-en-retard")
    MaPlage.SpecialCells(xlVisible).Copy WsDest.Range("A2")

Je veux copier les cellules qui contiennent le mot "yes" dans la colonne D de ma feuille Données, et les coller dans la premiere ligne vide de ma feuille DV en retard

Comment faire ?

Merci
 

Paf

XLDnaute Barbatruc
Re : VBA condition copie colle

Re eramond

Le code proposé fonctionne si ce n'est que les données sont copiées en ligne 3000 et quelques choses:


- en feuille Données vous utilisez un tableau (au sens XL2007 avec encadré bleu) comportant de multiples lignes vides. Ces lignes ne sont pas considérées comme vides par le code allongeant le traitement inutilement. Supprimer donc ces lignes vides

- en feuille DV-en-retard vous utilisez également un tableau qui me pose soucis au rajout de nouvelles lignes, la gestion des tableau étant quelque peu différente entre ma version d' Excel(2003) et la vôtre .
S'il n'est pas utile d'avoir un tableau, supprimer le, ainsi que les lignes vides, et ça fonctionnera.
Sinon ouvrir une nouvelle discussion pour l'insertion de lignes dans un tableau, ou bien attendre le passage d'un intervenant sur celle ci.

A+

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 558
Messages
2 089 596
Membres
104 220
dernier inscrit
Fredericchau