etpisculrien
XLDnaute Occasionnel
Bonjour à tous
J'ai besoin d'aide concernant une macro que je suis en train de réaliser. Je vous explique : J'ai plusieurs tableaux qui ont la même structure sur mon réseau et je souhaite récupérer les données de chacun d'eux dans un tableau synthétique. Pour cela j'utilise la création d'un tableau de données que je vais envoyer dans mon tableau de synthèse.
Jusqu'ici tout va bien, sauf que j'ai 2 colonnes avec des dates, l'une est parfaitement importée, et l'autre est importée au format US! Je ne comprends pas pourquoi et j'ai beau essayer plusieurs méthode pour formater la colonne, rien n'y fait, ça me met les date sous le format mm/jj/yy au lieu de jj/mm/yy.
Ci après un bout de mon code, si quelqu'un avait une solution?...
Sub Importation()
'Définition du chemin d'accès
racine = "\\192.168.168.168\share\TN\"
Set fs = CreateObject("Scripting.FileSystemObject")
Set dossier = fs.GetFolder(racine)
'Recherche la première ligne vide pour coller les données
LigneCopie = Sheets("Synthèse").ListObjects("TableauSynthèse").ListRows.Count + 17
'Suppression des lignes existantes
Rows("18:" & LigneCopie).Select
Selection.Delete Shift:=xlUp
FichierMACRO = ThisWorkbook.Name
Application.ScreenUpdating = False
For Each d In dossier.SubFolders
For Each f In d.Files
If f.Name = "Suivi d'affaires.xlsx" Then
'Recherche la première ligne vide pour coller les données
LigneCopie = Sheets("Synthèse").ListObjects("TableauSynthèse").ListRows.Count + 18
'Ouvre le fichier "Suivi affaires"
Workbooks.Open Filename:=f, Password:="eriscom"
nomfichierRAPPORT = f.Name
nomfeuilRAPPORT = "Devis"
'Défini le tableau à garder en mémoire
TABdonnees = Workbooks(nomfichierRAPPORT).Sheets(nomfeuilRAPPORT).Range("TableauDevis")
With Workbooks(nomfichierRAPPORT).Sheets(nomfeuilRAPPORT).Range("TableauDevis").Columns(11)
.NumberFormat = "dd/mm/yyyy"
End With
'Colle le tableau en mémoire dans synthèse à partir de la première ligne vide
Workbooks(FichierMACRO).Sheets("Synthèse").Cells(LigneCopie, 1).Resize(UBound(TABdonnees, 1), UBound(TABdonnees, 2)) = TABdonnees
Application.EnableEvents = False
Workbooks(nomfichierRAPPORT).Close
Application.EnableEvents = True
Erase TABdonnees
End If
Next
Next
Application.ScreenUpdating = True
End Sub
J'ai besoin d'aide concernant une macro que je suis en train de réaliser. Je vous explique : J'ai plusieurs tableaux qui ont la même structure sur mon réseau et je souhaite récupérer les données de chacun d'eux dans un tableau synthétique. Pour cela j'utilise la création d'un tableau de données que je vais envoyer dans mon tableau de synthèse.
Jusqu'ici tout va bien, sauf que j'ai 2 colonnes avec des dates, l'une est parfaitement importée, et l'autre est importée au format US! Je ne comprends pas pourquoi et j'ai beau essayer plusieurs méthode pour formater la colonne, rien n'y fait, ça me met les date sous le format mm/jj/yy au lieu de jj/mm/yy.
Ci après un bout de mon code, si quelqu'un avait une solution?...
Sub Importation()
'Définition du chemin d'accès
racine = "\\192.168.168.168\share\TN\"
Set fs = CreateObject("Scripting.FileSystemObject")
Set dossier = fs.GetFolder(racine)
'Recherche la première ligne vide pour coller les données
LigneCopie = Sheets("Synthèse").ListObjects("TableauSynthèse").ListRows.Count + 17
'Suppression des lignes existantes
Rows("18:" & LigneCopie).Select
Selection.Delete Shift:=xlUp
FichierMACRO = ThisWorkbook.Name
Application.ScreenUpdating = False
For Each d In dossier.SubFolders
For Each f In d.Files
If f.Name = "Suivi d'affaires.xlsx" Then
'Recherche la première ligne vide pour coller les données
LigneCopie = Sheets("Synthèse").ListObjects("TableauSynthèse").ListRows.Count + 18
'Ouvre le fichier "Suivi affaires"
Workbooks.Open Filename:=f, Password:="eriscom"
nomfichierRAPPORT = f.Name
nomfeuilRAPPORT = "Devis"
'Défini le tableau à garder en mémoire
TABdonnees = Workbooks(nomfichierRAPPORT).Sheets(nomfeuilRAPPORT).Range("TableauDevis")
With Workbooks(nomfichierRAPPORT).Sheets(nomfeuilRAPPORT).Range("TableauDevis").Columns(11)
.NumberFormat = "dd/mm/yyyy"
End With
'Colle le tableau en mémoire dans synthèse à partir de la première ligne vide
Workbooks(FichierMACRO).Sheets("Synthèse").Cells(LigneCopie, 1).Resize(UBound(TABdonnees, 1), UBound(TABdonnees, 2)) = TABdonnees
Application.EnableEvents = False
Workbooks(nomfichierRAPPORT).Close
Application.EnableEvents = True
Erase TABdonnees
End If
Next
Next
Application.ScreenUpdating = True
End Sub