accès à un fichier excel depuis un autre fichier excel
bonjour,
le code suivant hurle sur l'affectation à une variable de type workbook.
Code:
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.