Bonjour,

Inscrit récemment, je passe régulièrement ici pour lire les tuto et suivre les topics qui m'interessent. Le problème que je vous soumet à déjà été traité, retraité, re-re-traité...mais je dois fatigué il y a un truc qui ne passe plus (alors qu'il y a quelques heures, avant plusieurs modifs... :fail

Le problème réside sur la portée de mon module de classe instancié.

Extrait de mon module de classe Initialisation :
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
Option Explicit
 
Public Nom_de_la_Simulation As String
Public Repertoire_de_travail As String
Public Racine_import_S_fonctions As String
Public Racine_export_données_scenario As String
Public Racine_export_Courbe As String
Public Racine_librairie_SAO_1 As String
Public Racine_librairie_SAO_2 As String
Public Racine_données_scenario As String
Public Racine_Rapport As String
Public Racine_modèle_avion As String
Public Repertoire_cosimulation As String
Public Repertoire_tables_perfo As String
Public Repertoire_Templates_Courbes As String
Public Nom_du_fichier_de_parametre As String
 
 
Public MaxProcess As Single
Public sleepTimeMS As Single
 
Public Actual_ListFichier As Collection    
 
 
' Méthode permettant d'initialiser les chemins et repertoires (MENU)
' afin de les rendre accessible dans tout le fichier gestion_test
Sub Init_Path()
 
    Nom_de_la_Simulation = Worksheets("MENU").Range("B1")
    Repertoire_de_travail = Worksheets("MENU").Range("B2")
    Racine_import_S_fonctions = Worksheets("MENU").Range("B3")
    Racine_export_données_scenario = Worksheets("MENU").Range("B4")
    Racine_export_Courbe = Worksheets("MENU").Range("B5")
    Racine_librairie_SAO_1 = Worksheets("MENU").Range("B6")
    Racine_librairie_SAO_2 = Worksheets("MENU").Range("B7")
    Racine_données_scenario = Worksheets("MENU").Range("B8")
    Racine_Rapport = Worksheets("MENU").Range("B9")
    Racine_modèle_avion = Worksheets("MENU").Range("B10")
    Repertoire_cosimulation = Worksheets("MENU").Range("B11")
    Repertoire_tables_perfo = Worksheets("MENU").Range("B12")
    Repertoire_Templates_Courbes = Worksheets("MENU").Range("B13")
    Nom_du_fichier_de_parametre = Worksheets("MENU").Range("E1")
 
    MsgBox "Init_Path() => " & Nom_de_la_Simulation
 
End Sub
Extrait de ma feuille MENU

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
Option Explicit
 
Public myInit As Initialisation
 
Public Function GetInitialisation() As Initialisation
    Set GetInitialisation = New Initialisation
End Function
 
' ----------------------------------------------------------------------------------------------------
' Méthode permettant de lancer l'initialisation
Public Sub RaZ_Init()
 
    If myInit Is Nothing Then
        Set myInit = GetInitialisation
    End If
 
    MsgBox "Sub RaZ_Init()"
    myInit.Init_Path
    myInit.Init_Shell
    myInit.MAJ_Testjouables
 
    Worksheets("MENU").Range("B14:B25") = ""
 
    ' VERIFICATION
    If myInit Is Nothing Then
        MsgBox "Mauvaise Initialisation"
    Else
        Worksheets("MENU").Range("D14") = "Initialisation de " & myInit.Nom_de_la_Simulation & " : DONE"
    End If
 
End Sub
 
 
' ----------------------------------------------------------------------------------------------------
' Méthode permettant d'afficher un MsgBox avec le nombre de scenarios à simuler
Public Sub Info_nbScenarios()
 
    If myInit Is Nothing Then
        MsgBox "Mauvaise Initialisation"
    Else
        myInit.Calcul_NombreScenarios
    End If
 
End Sub
J'ai un bouton initialisation qui appelle Public Sub RaZ_Init(). Pas de soucis, le test de fin (et d'autres) me ressortent les bonnes infos issus des différents attributs de myInit.

Le bouton qui appelle Sub Info_nbScenarios()...fail à chaque fois par contre. "Mauvaise initialisation" qu'il me dit.

GetInitialisation est un ajout récent pour essayer de corriger le soucis. J'ai aussi essayé d'instancier par un Dim ... As New ... mais ça me clean la valeur de mes attributs de classes.

'fin bref, ça a marché avec un truc semblable.
Si quelqu'un peut m'aider je prends !

Merci d'avance,
Julien