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 90 91 92 93 94
| Option Explicit
Sub ECM()
'
'Déclaration des variables
'
Dim derniere_ligne As Long
Dim Tab_SCHEMA() As Variant
Dim Tab_ID() As Variant
Dim str As String
Dim i As Integer
Dim classeur As String
Dim statusBarInitial As Long
'
'Ouverture du fichier schema.xml_temporary.xlsx
'On se positionne dans l'onglet "schema.xml_temporary"
'
classeur = Application.GetOpenFilename(, 1, "Select 'schema.xml_temporary.xlsx' file", , False)
Workbooks.Open classeur
Sheets("schema.xml_temporary").Activate
'
derniere_ligne = Range("A" & Rows.Count).End(xlUp).Row
'
MsgBox ("Dernière ligne = ") & derniere_ligne
'
'La ligne d'instruction ci-dessous suffit à elle seule pour remplir le tableau !!
'La zone mise en mémoire part de la 2ème ligne --> Range("A2") jusqu'à la ligne "derniere_ligne - 1"
'Le tableau contient 52 colonnes et "derniere_ligne - 1" lignes
'
Tab_SCHEMA = Range("A2").Resize(derniere_ligne - 1, 52).Value
'
MsgBox ("Data storage is complete. The repatriation of the data will begin.")
'
'MsgBox ("1 2 = ") & Tab_SCHEMA(1, 2)
'MsgBox ("1 48 = ") & Tab_SCHEMA(1, 48)
'MsgBox ("399458 2 = ") & Tab_SCHEMA(399458, 2)
'MsgBox ("399458 48 = ") & Tab_SCHEMA(399458, 48)
'MsgBox ("399458 49 = ") & Tab_SCHEMA(399458, 49)
'
'Fermer le classeur actif
'
ActiveWorkbook.Close SaveChanges:=False
'
'Ouverture du fichier FOLLOW_UP_TEST.xlsm
'On se positionne dans l'onglet "ECM"
'
classeur = Application.GetOpenFilename(, 1, "Select 'FOLLOW_UP_TEST.xlsm' file", , False)
Workbooks.Open classeur
Sheets("ECM").Activate
'
Range("A1").Select
'
statusBarInitial = Application.DisplayStatusBar
Application.DisplayStatusBar = True
'
'Extraction de l'ID de tous les "Document title"
'
For i = 1 To derniere_ligne - 1
Application.StatusBar = "Calcul en cours... " & i & " / " & derniere_ligne - 1
str = Tab_SCHEMA(i, 2)
Tab_ID(i, 1) = ExtraireID(str)
Tab_ID(i, 2) = Tab_SCHEMA(i, 2)
Tab_ID(i, 3) = Tab_SCHEMA(i, 3)
Tab_ID(i, 4) = Tab_SCHEMA(i, 4)
Tab_ID(i, 5) = Tab_SCHEMA(i, 5)
Tab_ID(i, 6) = Tab_SCHEMA(i, 22)
Tab_ID(i, 7) = Tab_SCHEMA(i, 23)
Tab_ID(i, 8) = Tab_SCHEMA(i, 24)
Tab_ID(i, 9) = Tab_SCHEMA(i, 25)
Tab_ID(i, 10) = Tab_SCHEMA(i, 36)
Tab_ID(i, 11) = Tab_SCHEMA(i, 37)
Next
'
'
'Ecriture des résultats dans l'onglet "ECM"
'
For i = 1 To derniere_ligne - 1
Cells(i + 2, 2) = Tab_ID(i, 1)
Cells(i + 2, 3) = Tab_ID(i, 2)
Cells(i + 2, 4) = Tab_ID(i, 3)
Cells(i + 2, 5) = Tab_ID(i, 4)
Cells(i + 2, 6) = Tab_ID(i, 5)
Cells(i + 2, 7) = Tab_ID(i, 6)
Cells(i + 2, 8) = Tab_ID(i, 7)
Cells(i + 2, 9) = Tab_ID(i, 8)
Cells(i + 2, 10) = Tab_ID(i, 9)
Cells(i + 2, 11) = Tab_ID(i, 10)
Next
'
End Sub |
Partager