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
| Option Explicit
Sub Importer_Colonnes_Mater()
'
Dim Fichier, WbkCopy As Workbook, WbkColle As Workbook
Dim Colonnes(), Col As Integer, Resultat As Variant
'On attribue à la variable WbkColle le fichier actuel
Set WbkColle = ThisWorkbook
'
'Nom des entêtes de colonnes à importer
Colonnes = Array("M")
'
'Sélection du fichier
Fichier = Application.GetOpenFilename("URB-QSP_2ieme_Trim_2015_Generale, *.xlsx*")
'
'En cas de clic sur "ANNULER"
If Fichier <> False Then
'
'On ouvre le fichier
Set WbkCopy = Workbooks.Open("URB-QSP_2ieme_Trim_2015_Generale, *.xlsx*") 'Classeur de la base de données
With WbkCopy.Sheets("Données_2ieme_Trim_2015") 'Feuille de la base de données
'
'Boucle sur toutes les entêtes des colonnes
For Col = 1 To .Cells(1, .Cells.Columns.Count).End(xlToLeft).Column
'
'teste si l'entête correspond à un des noms des colonnes à copier
Resultat = Application.Match(.Cells(1, Col), Colonnes, 0)
'
'Si l'entête est trouvée
If Not IsError("M") Then
'
'NOM de la 1ier feuille du Classeur Mater vvv
.Columns(Col).Copy WbkColle.Sheets("Données_Mater_2ieme_Trim_2015").Cells(1, Cells.Columns.Count).End(xlToLeft).Offset(0, 1)
'
'Je n'est pas encore trouver le code pour exempter les 2 premières colonnes de la zone de copie
'
End If
Next Col
End With
WbkCopy.Close
End If
Set WbkCopy = Nothing
Set WbkColle = Nothing
End Sub |
Partager