Bonjour à tous,

Je travail actuellement sur une routine me permettant de générer automatiquement des graphiques à partir d'un tableau précédement renseigné.

Les données nécessaires aux graphiques n'étant pas équitablement réparties dans ce premier formulaire, et nécessitant égalment un traitement, je passe par un tableau intermédiaire, innaccessible aux utilisateurs finaux.

Dans un souci de garder à jour ce second tableau j'avais besoin de pouvoir rajouter des colonnes d'après un modèle enregistré dans la première colomne de ma feuille.
J'enregistre donc une macro me donnant ce code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
sub macro9()
   Range("A1:A68").Select
    Application.CutCopyMode = False
    Selection.Copy
    ActiveWindow.ScrollColumn = 2
'    ........plein de scroll
    ActiveWindow.ScrollColumn = 38
    ActiveWindow.ScrollColumn = 37
    ActiveWindow.SmallScroll Down:=-48
    Range("AS1").Select
    ActiveSheet.Paste
End Sub
Je l'adapte donc de cette manière:

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
 
Private Sub CommandButton1_Click()
    Dim cel As Range
    Dim i As Integer
    Worksheets("Macrotables").Activate
 
    'Last column research
    i = 4
    Do While Cells(1, i).Value <> ""
        i = i + 1
        Loop
 
    'First column copy
    Range("A1:A68").Select 'bugged lign
    Application.CutCopyMode = False
    Selection.Copy
 
    Range(Cells(1, i + 1).adress).Select
    ActiveSheet.Paste
 
    Cells(70, 4).Value = Cells(68, i + 1).Address
 
    'Cleaning
    For Each cel In Range("D2", Cells(70, 4).Value)
        If cel.Value = 0 Then
            cel.ClearContents
        End If
        If VarType(cel.Value) = vbString Then
            cel.ClearContents
        End If
    Next
    Cells(70, 4).Value = Cells(68, 45).Address
 
End Sub
Seulement lorsque je lance ma macro il me sort une erreur:

Run-time error '1004':
La methode select de la classe range a échoué

Erreur qui n'est pas présente sur l'execution de la macro enregistré. Pourquoi donc?