bonjour,
Dans mon projet, j'ai
un module normal qui défini un type de donnée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Option Explicit Public Type Coordonnee x As Single y As Single End Type
un module de classe :
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81 Option Explicit ' definition des champs Private funcName As String Private borneInf As Single Private borneSup As Single Private plotNumber As Integer Private intervalX As Single Private tabVal() As Coordonnee ' ******************************************* ' constructeurs 'Sub ClassFonction() ' ' funcName = "" ' borneInf = 0 ' borneSup = 0 ' plotNumber = 0 ' intervalX = 0 ' 'End Sub ' ******************************************* ' methodes ' génération des valeurs du tableau Sub calculData() Dim ind As Integer intervalX = (borneSup - borneInf) / (plotNumber - 1) ReDim tabVal(plotNumber) For ind = 1 To plotNumber Dim val As Coordonnee val.x = (intervalX * (ind - 1)) + borneInf val.y = 5 * val.x + 4 tabVal(ind) = val Next ind End Sub ' ******************************************* ' setter Sub setFuncName(str As String) funcName = str End Sub Sub setBorneInf(val As Single) borneInf = val End Sub Sub setBorneSup(val As Single) borneSup = val End Sub Sub setPlotNumber(val As Integer) plotNumber = val End Sub ' ******************************************* ' getter Sub getTabVal() getTabVal = tabVal End Sub
un autre module normal qui contient le code principal de mon programme :
=> la ligne : tabTmp = funcObj.getTabVal() me renvoi une erreur :
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 Option Explicit Sub createTabVal() Dim lineNum As Integer Dim index As Integer lineNum = 2 While Cells(lineNum, 1).Value <> "" Dim funcObj As New ClassFonction funcObj.setFuncName (Cells(lineNum, 1).Value) funcObj.setBorneInf (Cells(lineNum, 2).Value) funcObj.setBorneSup (Cells(lineNum, 3).Value) funcObj.setPlotNumber (Cells(lineNum, 4).Value) funcObj.calculData Dim tabTmp() As Coordonnee tabTmp = funcObj.getTabVal() For Each objTmp In tabTmp Debug.Print ("x: " + objTmp.x + " ;y: " + objTmp.y) Next lineNum = lineNum + 1 Wend End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Erreur de compilation Fonction ou variable attendue
Partager