Bonjour,

suite à un thread précédent, j'ai modifié un bout de code pour le rendre plus simple.

Et maintenant j'ai systématiquement une erreur '1004' à la neuvième itération dans ma boucle initiale.

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
 
'Automatic generation of indicators when worksheet is activated
Private Sub Worksheet_Activate()
 
 
Dim iLine As Integer
Dim iCol As Integer
Dim bEnd As Boolean
Dim iDestLine As Integer
Dim csFormula As String
Dim Value As Variant
 
'Copy all necessary information
    iDestLine = 2
    iLine = 6
    iCol = 5
 
    bEnd = False
    Do
        If IsEmpty(Worksheets("Livrables").Cells(iLine, iCol).Value) Then
            bEnd = True
        Else
            'Data copy
            'Value = Worksheets("Livrables").Cells(iLine, 5).Value
            'Worksheets("Indicateurs").Range("A" & Chr(iDestLine + 48)).ClearCOntent
            'Ligne qui pose problème ci dessous
Worksheets("Indicateurs").Range("A" & Chr(iDestLine + 48)).Value = Worksheets("Livrables").Cells(iLine, 5).Value
            Worksheets("Indicateurs").Range("B" & Chr(iDestLine + 48)).Value = Worksheets("Livrables").Cells(iLine, 6).Value
            Worksheets("Indicateurs").Range("C" & Chr(iDestLine + 48)).Value = Worksheets("Livrables").Cells(iLine, 8).Value
            csFormula = "=NB.SI(Zone_Bimestre;A" + Chr(iDestLine + 48) + ")"
            Worksheets("Indicateurs").Range("D" & Chr(iDestLine + 48)).FormulaLocal = csFormula
 
            iDestLine = iDestLine + 1
            iLine = iLine + 1
        End If
 
        ' to avoid infinite loop
        If iLine > 65535 Then
            Exit Do
        End If
 
    Loop While bEnd = False
 
    'redefine the enter zone
    'ActiveWorkbook.Names("Data_Zone").Delete
    'ActiveWorkbook.Names.Add Name:=reponse, RefersToR1C1:=ActiveCell.EntireColumn.Select
End Sub
et si dans mon onglet source "Livrables" je change le contenu ou que je supprime la ligne que je n'arrive pas à recopier, j'ai le même problème

Merci d'avance pour votre aide