Menu

VBA: macro copier coller sous condition [Résolu/Fermé]

Messages postés
2
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
10 juin 2011
- - Dernière réponse : Koalacid
Messages postés
70
Date d'inscription
vendredi 5 septembre 2014
Statut
Membre
Dernière intervention
8 mars 2016
- 30 sept. 2014 à 14:13
Bonjour,

Je débute tout juste en VBA.
Je souhaite créer une macro qui copie une ligne sous 3 conditions (cellule enF ocuppée alors que cellule B et C sont vides).
Je veux ensuite repertorier les lignes concernées dans une autre feuille ("Annnexe 2").

Ci dessous le code qui me pose problème.

Sub BC1()

Dim i as integer
For i= 1 to 500

If Not IsEmpty(Range("F"&i)) And Range("B"&i).Value="" And Range("C"&i).Value=""

Then Row("i").copy
        Sheets("Annexe2").Select
        Derlig=Range(A1048576).End(xlUp).Row+1
        Cells(Derlig,1).Activate
        Selection.Paste
        Sheets("Feuilled'origine").Activate

End If
End Sub


Merci par avance pour votre aide.



Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
9002
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
15 juin 2019
1580
1
Merci
bonjour

un code a adapter à ta situation

Public Sub BC1()  
Dim i As Integer, derlig As Long  
With Sheets("feuil1")  
  For i = 1 To 10  
    If Not IsEmpty(.Range("F" & i)) And .Range("B" & i).Value = "" And .Range("C" & i).Value = "" Then  
      derlig = Sheets("feuil2").Range("A65536").End(xlUp).Row + 1  
      .Rows(i).Copy Sheets("feuil2").Range("A" & i)  
    End If  
  Next i  
End With  
End Sub


bonne suite

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 42202 internautes nous ont dit merci ce mois-ci

0
Merci
Merci pour la rapidité de ta réponse ccm!
Je teste de suite.

Bonne soirée
Messages postés
70
Date d'inscription
vendredi 5 septembre 2014
Statut
Membre
Dernière intervention
8 mars 2016
0
Merci
Bonjour ccm81,


Je souhaiterai adapter ta macro qui correspond à ce que je recherche. C'est-à-dire:

Une macro qui copie une plage d'une feuille sur une autre feuille (copier/coller en valeurs) mais à la suite de la plage précédente occupée. C'est pour créer un historique des données.

Ta macro me convient bien mais quand je la fait fonctionner elle ne colle qu'une ligne. Pourrais-tu m'expliquer les étapes de ton code pour que je l'adapte selon ce que j'ai?


Je te remercie pour ton aide,



Koala