Bonjour à tous,

Je voudrais créer un programme dont les grandes lignes générales correspondent
à ceci :
1- sélectionner la cellule dont la valeur est "SOLDE"
2- séléctionner les cellules non vides dans la colonne dessous
la cellule référente
3- si valeur différente de 0 et si valeur différente de "SOLDE" et si
forumule ds cellule différente de " =Somme(G3:G40)"
=>alors :
copie ds 1ère feuille du classeur en cours toutes les lignes des cellules respectant les si.
Mon ébauche donne ceci:
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
Sub test()
Dim monfichier As Workbook
Dim adr As String
Dim recap As String
Dim direc As Integer
Set monfichier = Workbooks.Open("\\Nwanex\donnees\daf\daf4\B236\2007 FACTURES\CHAPITRE 0214- 02\fourre-tout\LISTE DES FACTURES ET BC 2007 TOURRE TOUT")
    monfichier.Worksheets(1).Select
    Range("1:1").Select
    For Each Item In Selection
       If Item.Value = "SOLDE" Then
           adr = Item.Address
           MsgBox (adr)
       End If
    Next
    Range((adr), Range(adr).End(xlDown)).Select
    For i = 1 To Selection.Count
          If Cells(i, 7).Value > "0" And Cells(i, 7).Value <> "SOLDE" And _
             Cells(i, 7).Formula <> "=SOMME(G3:G40)" Then
             recap = Cells(i, 7).Address
             direc = Cells(i, 7).Count
             Range(recap).EntireRow.Copy ThisWorkbook.Worksheets(1).Range("A2")
             ThisWorkbook.Worksheets(1).Activate
             MsgBox ("tout marche")
          End If
    Next
    Application.CutCopyMode = False
End Sub
Mon problème est au niveau de la copie. Il prend en bien charge la première valeur, mais s'arrête après. Je ne comprend pas pourquoi. J'espère aussi avoir été à peu près clair. Merci en tous cas pour toute l'aide apportée.