bonjour,

le code suivant hurle sur l'affectation à une variable de type workbook.



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
82
83
84
85
86
87
88
89
Sub analyse()

Dim Cell_Ec As Range
Dim Cell_Rev As Range
Dim fiche As Workbook

Dim Ref As String
Dim severite(1 To 3) As Integer
severite(1) = 0 'minor
severite(2) = 0 'signif
severite(3) = 0 'oper
Dim nom_feuil As String

Dim Modero As String 'feuille 8
Dim Pair1 As String 'feuille 9
Dim Pair2 As String 'feuille 10
Dim Pair3 As String 'feuille 11
Dim Pair4 As String 'feuille 12
Dim Pair5 As String 'feuille 13

Dim ligne As Integer
Dim ln As Integer
Dim fich As String


Const Rep As String = "D:\PatrickBrunel\IVQ\etudes\PeerReview\Revues\"


' recuperer le nom du fichier à lire
Call datation
'MsgBox LeMois
Set Cell_Ec = ThisWorkbook.Worksheets(LeMois).Rows("1:1")

ligne = 1
Do While (Cell_Ec.Offset(ligne).Columns("c").Value <> "")
Ref = Cell_Ec.Offset(ligne).Columns("c").Value
fich = Replace(Ref, "/", "_") + ".xls"
fich = Rep + fich
MsgBox fich

'rechercher le fichier dans le repertoire, verifier son existence et lit les fiches de descriptions

' If FileLen(fich) <> 0 Then
 'MsgBox FileLen(Ref)
 
 
 
' Set fiche = WorkBooks.Open Filename = fich

Set fiche = Workbooks(fich) ' le programme plante à ce niveau
If fiche Is Nothing Then
Workbooks.Open (fich)
Else: Set fiche = Nothing
End If
 
' Modero = fiche.Workshetts(8).Name
 Modero = fiche.Workshetts(8).Name
 Pair1 = fiche.Workshetts(9).Name
  Pair2 = fiche.Workshetts(10).Name
   Pair3 = fiche.Workshetts(11).Name
   Pair4 = fiche.Workshetts(12).Name
   Pair5 = fiche.Workshetts(13).Name
   MsgBox Pair1
' End If
 
 Set Cell_Rev = Workbooks(Ref).Workshetts(Modero).Columns("d")
 
 
 For ln = 8 To 40
  Select Case Cell_Rev.Offset(ln).Value
  
Case "minor"
severite(1) = severite(1) + 1

 Case "signif"
 severite(2) = severite(2) + 1
 
 Case "oper"
  severite(3) = severite(3) + 1

End Select
Next ln

' fin de boucle de recherche

ligne = ligne + 1
Loop

End Sub

ce que je veux faire est de récupérer des données sur un ensemble de fichiers
pour les traiter dans une macro du fichier d'analyse.