Bonjour,
j'ai une macro qui fonctionne en pas à pas et se plante en exécution automatique.
J'arrive pas à détecter le problème.
Je veux savoir c'est quoi le problème.
Et est ce que il y a une méthode pour savoir à quel endroit elle se plante ?
Voici en dessous le code et en pièce jointe le fichier Excel.
Merci d'avance
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 Sub graph() Dim i, j, k, h, x As Integer For i = 10 To 30 Step 1 If Sheets("D").Range("O" & i) = 1 Then Sheets("D").Rows(i - 1).Copy Sheets("Données").Rows(i - 1).PasteSpecial Paste:=xlPasteValues Sheets("D").Rows(i - 2).Copy Sheets("Données").Rows(i - 2).PasteSpecial Paste:=xlPasteValues End If Next i Sheets("Données").Columns(2).SpecialCells(xlCellTypeBlanks).EntireRow.Delete For j = 1 To 50 Step 2 Sheets("Analyse").Range("A" & j) = Sheets("Données").Range("B" & j) Sheets("Analyse").Range("B" & j) = Sheets("Données").Range("C" & j) Sheets("Analyse").Range("C" & j) = Sheets("Données").Range("D" & j) Next j For k = 1 To 6 Step 2 Sheets("Données").Select ActiveSheet.Shapes.AddChart.Select ActiveChart.SetSourceData Source:=Sheets("Données").Range("Q" & k & ":CU" & k + 1) With ActiveChart .ChartType = xlLine: .ApplyLayout (3) .HasTitle = True .ChartTitle.Text = Sheets("Données").Range("C" & k) .Location Where:=xlLocationAsObject, Name:="Analyse" End With ActiveChart.SeriesCollection(1).Name = Sheets("Données").Range("E" & k) ActiveChart.SeriesCollection(2).Name = Sheets("Données").Range("E" & k + 1) Next k Sheets("Analyse").Columns(2).SpecialCells(xlCellTypeBlanks).EntireRow.Delete For h = 1 To 3 Step 1 With ActiveSheet.ChartObjects(h) .Left = Range("D" & h).Left .Top = Range("D" & h).Top .Width = Range("D" & h).Width .Height = Range("D" & h).Height End With Next h End Sub
Partager