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
|
Sub Qsd()
Dim NomFeuille As String, MonFichier As String, Chemin As String
Dim Sh As Worksheet, NouvelOnglet As Worksheet
Dim OngletTrouve As Boolean
Chemin = ActiveWorkbook.Path & "\test2\"
MonFichier = Dir(Chemin & "*.xlsx", vbNormal)
Do While MonFichier <> ""
Debug.Print MonFichier
'Ici je crée un onglet pour chaque nom de fichier dans mon dossier
NomFeuille = Split(Split(MonFichier, "-")(2), "_")(0)
OngletTrouve = False
For Each Sh In Sheets
If Sh.Name = NomFeuille Then
OngletTrouve = True
Exit For
End If
Next
If OngletTrouve = False Then
Set NouvelOnglet = Sheets.Add(After:=Sheets(Sheets.Count)) 'Devient la feuille active
Sheets("Template").Range("A1:AH127").Copy Destination:=NouvelOnglet.Range("A1")
MettreEnFormeLeNouvelOnglet NouvelOnglet, NomFeuille, MonFichier, Chemin
Set NouvelOnglet = Nothing
End If
MonFichier = Dir
Loop
End Sub
Sub MettreEnFormeLeNouvelOnglet(ByVal NouvelOnglet2 As Worksheet, ByVal NomFeuille2 As String, ByVal Monfichier2 As String, ByVal Chemin2 As String)
Dim I As Integer, J As Integer
With NouvelOnglet2
.Name = NomFeuille2
.Range("A1") = NomFeuille2
J = 3
'Récuperation des données des FIT_MECH
'-------------------------------------
For I = 8 To 154
Select Case NomFeuille2
Case "T1"
'Temps 'Ici je crée un lien pour aller récupérer les valeurs dans l'onglet Test1 de mon fichier,
' de mon dossier.
.Cells(I - 4, J - 2).FormulaR1C1 = "='" & Chemin2 & "[" & Monfichier2 & "]Test1'!R" & I & "C" & J
Case Else: 'Tout ce qui n'est pas l'onglet T1
'Temps
.Cells(I - 4, J - 2).FormulaR1C1 = "='" & Chemin2 & "[" & Monfichier2 & "]Test'!R" & I & "C" & J
End Select
Next I
End With
End Sub |
Partager