VBA: macro copier coller sous condition
Résolu
ana41
Messages postés
2
Statut
Membre
-
Koalacid Messages postés 70 Statut Membre -
Koalacid Messages postés 70 Statut Membre -
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.
Merci par avance pour votre aide.
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.
A voir également:
- VBA: macro copier coller sous condition
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
3 réponses
bonjour
un code a adapter à ta situation
bonne suite
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
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
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