Bonjour à tous,

J'ai un petit problème dans la programmation vba de la copie de données.

J'ai un classeur composé essentiellement de variable car c'est un classeur évolutif. Dans ce classeur, j'aurais plusieurs feuilles. Une feuille me permettrais de regrouper toutes les lignes que je veux ressortir de toutes les feuilles du classeur, selon certaines conditions.

Pour aller un peu plus loin dans les explications, j'ai une feuille nommée "Fin Exercice". Je souhaite que le code vérifie chaque lignes de toutes les feuilles et si dans la ligne la cellule B est remplie et la cellule T est vide alors certaines données de cette ligne comme le cellule B soit copiée dans la feuille nommée "Fin Exercice".

Pourriez-vous m'aider à programmer cela, s'il vous plait ?

Ci-dessous un bout de code que j'ai fait.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
 
Private Sub Worksheet_Activate()
 
Dim FEUILLEIMPUTATION As Worksheets
Dim I As Integer
Dim DERNLIGNFEUILLES As Long
Dim DERNLIGNFEUILEXERCICE As Long
Dim CELLULEPOURINSERTION As Range
Dim CELLULEPOURCOPIE As Range
 
DERNLIGNFEUILEXERCICE = Sheets("FIN EXERCICE").Range("B1047685").End(xlUp).Range
 
    'EXECUTION DU CODE POUR CHAQUE FEUILLE SAUF "RECAPITULATIF", "MARCHES" ET "FIN EXERCICE"
 
    For Each FEUILLEIMPUTATION In ThisWorkbook
 
        DERNLIGNFEUILLES = Range("B1047685").End(xlUp).Range
 
        For I = 26 To DERNLIGNFEUILLES
 
            If Range("B" & I) <> "" And Range("T" & I) = "" Then
 
            'INSERTION DE LIGNE EXEMPLE
 
                Set CELLULEPOURINSERTION = DERNLIGNFEUILEXERCICE.ActiveCell.Offset(1, 0)
 
                CELLULEPOURINSERTION.EntireRow.Insert
 
                CELLULEPOURINSERTION.Select
 
                Set CELLULEPOURCOPIE = ActiveCell.Offset(-1, 0)
 
                Range("A2").EntireRow.Hidden = False
 
                Range("A2").EntireRow.Copy CELLULEPOURCOPIE
 
                Range("A2").EntireRow.Hidden = True
 
                CELLULEPOURCOPIE.Select
 
                'COPIE DE DONNEES
 
                Sheets("FIN EXERCICE").Range("B").Value = FEUILLEIMPUTATION.Range("B" & I).Value
 
            End If
 
        Next I
 
    Next FEUILLEIMPUTATION
 
End Sub