Bonsoir
remplace le module 1 par celui-là :
' Importer les données de fichier Excel désigné
' fichier="*.xlxs ou xlsm"
' une zone définie "plage"
' Si blocage sur New ADODB.connection, alors sous VBA stopper la macro et dans Outils, références, Activer "Microsoft Activex Object le plus élévé de la liste.
Sub RecupCopyFrmRecordset()
' Microsoft ActiveX DataObject doit être coché
Sheets("compte courant").Select
Set cnn = New ADODB.Connection
répertoire = ThisWorkbook.Path
Fichier = "C:\Users\SEBASTIEN\Desktop\comptes.xlsm" 'ici ton chemin vers ton fichier source.
cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Fichier & ";Extended Properties=""Excel 12.0;HDR=YES;"""
Set rs = cnn.Execute("[essai$A5:E5000]") ' zone de plage dans la source de A5 à E5000, tu modififies comme tu le souhaites.
[J4].CopyFromRecordset rs
rs.Close
Set rs = Nothing
Set rs = cnn.Execute("[essai$K1:K2]")
[K1].CopyFromRecordset rs
rs.Close
cnn.Close
Set rs = Nothing
Set cnn = Nothing
ActiveWindow.SmallScroll Down:=-12
Range("N4:O5000").Select
Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub
Cela modifie le format.
CORDIA5