Transfère de données d’un fichier à un autre

Bonjour, je suis novice dans l’utilisation de VBA et depuis quelque temps je bloque sur une macro…

J’ai pour habitude de m’aider du site pour arriver aux résultats souhaités mais là, je n’arrive pas à trouver la solution…

L’objectif de ma macro :

Je possède 2 fichiers qui me servent à planifier mon travail de tous les jours.

-Planning 1 :

Ce planning en lecture seul visible par toutes les personnes (52 feuilles une feuille par semaine + une feuille de menu)

-Planning (N+1) :

Ce planning modifiable pour les personnes disposant du mdp (52 feuilles une feuille par semaine + une feuille de menu)

L’idée c’est de crée un bouton « Mise à jour » qui à l’activation rapportera toutes les données du fichier Planning (N+1) sans que celui-ci sois ouvert.

J’ai imaginé un schéma qu’Excel pourrai exécuter :

1-Activation du bouton

2-Ouverture du fichier planning (N+1)

3-Copie toutes données de chaque feuille

4-Colle les données sur le fichier Planning 1 sous format de valeur pour ne pas écraser la mise en forme du planning 1

5-Fermeture du fichier Planning (N+1)

6- fin de la macro

Mais je rencontre un problème de chemin avec ma macro… je vous laisse voir ce qui ne va pas...

Sub planning()

Dim wkA As Workbook, wkB As Workbook

Dim chemin As String, fichier As String

'classeur A qui contient la macro

Set wkA = ThisWorkbook

'chemin ou se trouve le fichier B

chemin = "J:\MarcylEtoile\Controles\Assurance de sterilite\Planning UO\Test planning"

'nom du fichier B

fichier = "Produit.xlsx"

'ouvre le fichier B

Workbooks.Open "J:\xxx\xxxx\xxxx\xxxx\xxxx\xxxx"

'met en variable le classeur B

Set wkB = ActiveWorkbook

'copie la feuille "S00" du classeur B et la copie dans le classeur A sur la feuille "S00"

wkB.Sheets("S01").Range("A1:J61").Copy

wkA.Sheets("S01").Range("A1:J61").PasteSpecial Paste:=xlPasteValues

MsgBox ("Mise à jour effectuée") 'message pour dire que le classeur est copiée.

wkB.Close True 'ferme et enregistre le classeur B

End Sub

Merci par avance de votre aide, et je m'excuse pour les fautes d'orthographe...

Bonjour,

Sub planning()
    Dim wkb As Workbook, chemin$, fichier$
    chemin = "J:\MarcylEtoile\Controles\Assurance de sterilite\Planning UO\Test planning\"
    fichier = "Produit.xlsx"
    Application.ScreenUpdating = False
    Set wkb = Workbooks.Open(chemin & fichier)
    ThisWorkbook.Sheets("S01").Range("A1:J61").Value = wkb.Sheets("S01").Range("A1:J61").Value
    MsgBox "Mise à jour effectuée"
    wkb.Close True
End Sub

NB- La prochaine fois pense à mettre ton code sous balises Code...

Cordialement.

Merci infiniment ! c'est super cool ! sa va bien me dépanner.

Rechercher des sujets similaires à "transfere donnees fichier"