Recopie de certaines données.

zeltron24

XLDnaute Impliqué
Bonsoir le forum,

Est ce que quelqu'un aurez un peu de temps à me donner afin de me venir en aide sur un problème de recopie de données d'un tableau dans un autre tableau sous certaines conditions. J'y ai joins un fichier expliquant ce que je souhaiterai.
D'avance je vous dis un grand merci, je pense que le problème est assez complexe.
Zeltron24
 

Pièces jointes

  • Classeur1.xls
    22 KB · Affichages: 369
  • Classeur1.xls
    22 KB · Affichages: 387
  • Classeur1.xls
    22 KB · Affichages: 390

zeltron24

XLDnaute Impliqué
Re : Recopie de certaines données.

Bonsoir le forum et léti07

Voila ou j'en suis en ce moment ce n'est pas encore ce qui me faut mais si quelqu'un pourrait me donner un coup de main j'en serai heureux. Merci d'avance.

Sub CopieVers()
Dim lgLign As Long
Dim lgDerLign As Long
Dim aCopie As Boolean
aCopie = False

' Tableau 1 : Boucle de la ligne 11 à 59
For lgLign = 7 To Range("B" & Cells.Rows.Count).End(xlUp).Row

' Uniquement le retrait d'espèces
If Range("F" & lgLign).Value = "Retrait Espèces" And Not Range("I" & lgLign).Value = "P" Then ' Dernière ligne libre en colonne V
lgDerLign = Range("B" & Cells.Rows.Count).End(xlUp).Row + 1
Sheets("F2").Range("B" & lgDerLign).Value = Sheets("F1").Range("B" & lgLign).Value 'Date de l'opération
Sheets("F2").Range("F" & lgDerLign).Value = Sheets("F1").Range("F" & lgLign).Value 'Nature de l'opération
Sheets("F2").Range("G" & lgDerLign).Value = Sheets("F1").Range("H" & lgLign).Value 'Montant de l'opération
Range("B2").Value = 1
Range("I" & lgLign).Value = "P"
aCopie = True
End If
Next lgLign
Sheets(LEP).Select
Range("A1").Select

If bCopie = True Then
MsgBox "la copie a été réalisée avec succès."
Else
MsgBox "Toutes les données ont été copiées."
Range("B2").Value = ""
End If
Range("A10").Select

End Sub

zeltron24
 

léti07

XLDnaute Nouveau
Re : Recopie de certaines données.

bonjour :)

J'ai réussi à faire fonctionner le code d'une feuille à une autre (en restant dans le même classeur)

Voila mon code:
Code:
Dim lgLig As Long
Dim lgDerLig As Long
If Range("$Q$1") <> "" Then
    For lgLig = 6 To [A65536].End(xlUp).Row
        If Range("c" & lgLig).Value = Range("$Q$1") Then
            ' Dernière ligne libre en colonne A
            lgDerLig = Sheets("Feuil3").Range("A" & Cells.Rows.Count).End(xlUp).Row + 1
            Sheets("Feuil3").Range("A" & lgDerLig).Value = Sheets("Feuil1").Range("A" & lgLig).Value
            Sheets("Feuil3").Range("D" & lgDerLig).Value = Sheets("Feuil1").Range("C" & lgLig).Value
        End If
    Next lgLig
End If

Si ca peux d'aider à faire fonctionner ton code
Mais pour ma part j'arrive toujours pas à faire la copie dans un autre classeur :confused:.
Si quelqu'un à une idée elle est la bienvenue
merci d'avance
 

matthieu33

XLDnaute Occasionnel
Re : Recopie de certaines données.

Bonjour Zeltron24, Léti07 et le forum,

Zeltron24, je te fournis une solution par rapport à ton dernier fichier.

Léti07, aurais-tu un extrait de ton fichier à nous joindre ?

Merci
 

Pièces jointes

  • Test_v1.xls
    40 KB · Affichages: 76
  • Test_v1.xls
    40 KB · Affichages: 80
  • Test_v1.xls
    40 KB · Affichages: 86

matthieu33

XLDnaute Occasionnel
Re : Recopie de certaines données.

Bonjour Léti07,

Voici une solution.
Tu dois mettre les 2 fichiers dans le même répertoire.
Pour le résultat par critère, tu peux saisir l'un ou l'autre des critères ou les 2 critères en même temps.

J'ai également fait l'extraction globale.

J'espère que cette solution te conviendra.
 

Pièces jointes

  • Fichiers_v1.zip
    25.7 KB · Affichages: 78

zeltron24

XLDnaute Impliqué
Re : Recopie de certaines données.

Bonsoir le forum,
Toujours sur mon projet, je viens vous demander de l'aide sur un problème de feuille à copier. Je m'explique.

J'ai un classeur qui comporte une feuille par mois. Suivant la feuille activée, et aux conditions que j'ai faites (voir fichier et haut du fil) je dois recopier certaines données dans une autre feuille nommée "LEP" Voici un extrait de la macro :

For lgLig = 7 To Range("B" & Cells.Rows.Count).End(xlUp).Row

If Range("F" & lgLig).Value = "Virement LEP" And Not Range("I" & lgLig).Value = "P" Then

' Dernière ligne libre en colonne B
lgDerLig = Sheets("LEP").Range("B" & Cells.Rows.Count).End(xlUp).Row + 1
Sheets("LEP").Range("B" & lgDerLig).Value = Worksheets(NomFeuille).Range("B" & lgLig).Value 'Date de l'opération
Sheets("LEP").Range("F" & lgDerLig).Value = Worksheets(NomFeuille).Range("F" & lgLig).Value 'Nature de l'opération
Sheets("LEP").Range("H" & lgDerLig).Value = Worksheets(NomFeuille).Range("G" & lgLig).Value 'Montant de l'opération
Range("B2").Value = 1
Range("I" & lgLig).Value = "P"
bCopie = True
End If
Next lgLig

D'avance merci pour l'aide que vous m'apporteriez.
zeltron24
 

Discussions similaires

Statistiques des forums

Discussions
312 499
Messages
2 088 999
Membres
104 001
dernier inscrit
dessinbecm