Bonjour,
J'ai un fichier dans lequel j'importe diverses données issues d'un fichier texte ouvert avec la méthode ci-dessous :
Je fais ensuite un petit traitement pour ne garder que les données utiles, après quoi je les copie dans le presse-papier et ferme le fichier qui ne m'est plus d'aucune utilité de la façon suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 MsgBox "Dans la boîte de dialogue suivante" & vbCrLf & vbCrLf _ & "veuillez choisir le fichier à traiter.", vbOKOnly + vbInformation, "Choix du fichier" Fichier = Application.GetOpenFilename(, , , , False) If TypeName(Fichier) = "Boolean" Then Exit Sub Workbooks.OpenText Fichier, Origin:=xlWindows, StartRow:=1, DataType:=xlFixedWidth, _ FieldInfo:=Array(Array(0, 4), Array(10, 2), Array(15, 2), Array(31, 2), Array(38, 2), _ Array(41, 2), Array(54, 1), Array(62, 1), Array(70, 1), Array(77, 1), Array(84, 1), Array(92, 1)), _ Local:=True, DecimalSeparator:=".", TrailingMinusNumbers:=True
C'est après que ça se gâte, je n'arrive pas à conserver le format de mes dates avec le collage de mes données en vba malgré de nombreux essais.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Range("A1").CurrentRegion.Copy Application.DisplayAlerts = False ActiveWorkbook.Close False Application.DisplayAlerts = True
Au mieux c'est le format américain qui est collé, au pire j'ai un message d'erreur.
J'ai essayé d'enregistrer mon collage avec l'enregistreur de macro mais après le code créé par excel génère une erreur d'exécution si je l'exécute à partir de mon module.
Si a ce stade je fais un clic droit dans ma première cellule de destination excel me propose uniquement le collage texte mais le résultat est nickel.
Toutes vos idées seront les bienvenues.
Cordialement
Partager