Bonjour,
Quelqu'un pourrait-il m'aider à résoudre mon problème de copie ?
J'ai testé différentes manières de faire et je n'arrive pas a trouver une méthode qui fonctionne pour moi.
Je sais qu'il existe des erreurs et j'ai besoin de jolis yeux extérieurs pour m’éclairer.
Je souhaite copier le contenu d'une feuille nommée "Historique des saisies" d'un classeur en xlsm sur une feuille nommée "Import" du classeur d'ou je lance la macro.
Voici le code :
_________________________________________________________________________________________
Private Sub lecture(fichier As String)
Dim depart As Integer, position As Integer
Dim texte As String, tampon As String, extension As String, nomfichier As String
extension = Mid(fichier, InStrRev(fichier, "." ) + 1)
If extension = "csv" Then
Open fichier For Input As #1
Do While Not EOF(1)
Line Input #1, texte
depart = 1: position = 1
Do While (position <> 0)
position = InStr(depart, texte, ";", 1)
If position = 0 Then
tampon = Mid(texte, depart)
Sheets("Import" ).Cells(ligne_enCours, colonne_enCours).Value = tampon
Exit Do
Else
tampon = Mid(texte, depart, position - depart)
End If
Sheets("Import" ).Cells(ligne_enCours, colonne_enCours).Value = tampon
depart = position + 1
colonne_enCours = colonne_enCours + 1
Loop
colonne_enCours = colonne_debut
ligne_enCours = ligne_enCours + 1
Loop
Close #1
Else
Open fichier For Input As #1
Dim plageTableau As Range, origine As Range, destination As Range
nomfichier = Mid(fichier, InStrRev(fichier, "\" ) + 1)
Set plageTableau = Range("A2:A" & Range("A2" ).End(xlDown).End(xlToRight).Row)
Set origine = Workbooks(nomfichier).Sheets("Historique des saisies" ).Range(plageTableau) erreur 1004 erreur definie par l'application ou par l'objet
Set destination = ThisWorkbook.Sheets("Import" ).Range("A" & Range("A1" ).End(xlDown).Row)
origine.Copy destination
Close #1
End If
End Sub
________________________________________________________________________________________________________________