Copier dans un autre classeur
bonjour ,je souhaiterais copier une feuille d'un classeur sur un autre classeur et sur une feuille precise
mon code ne fonctionne pas
comment faire je n'y arrive pas svp aider moi
Private Sub Worksheet_Activate()
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 JANVIER
chemin = "E:/new alky/ALKY/2015/"
'nom du fichier JANVIER
fichier = "JANVIER.xlsm"
'ouvre le fichier JANVIER
Workbooks.Open chemin & fichier
'met en variable le classeur JANVIER
Set wkB = ActiveWorkbook
'copie la feuille "eric" du classeur A dans la feuil2 dans le classeur JANVIER
wkB.Sheets("eric").Copy
wkA.Sheets("feuil2").PasteSpecial xlPasteValues
MsgBox ("La feuille est maintenant copiée") 'message pour dire que la feuille est copiée.
wkB.Close True 'ferme et enregistre le classeur JANVIER
End Sub
merci pour vos reponse
Bonjour,
tu ne nous indiques pas sur quelle instruction ton code se plante.
mais essaie ceci
'copie les cellules la feuille "eric" du classeur A dans la feuil2 dans le classeur JANVIER
wkB.Sheets("eric").cells.Copy
wkA.Sheets("feuil2").cells.PasteSpecial xlPasteValuesde plus il me semble que dans le nom de ton chemin les / devraient être des \
re:
merci beaucoup ca fonctionne par contre il reste selectionner sur la page entiere (ecran bleue )
comment revenir sur une cellule pour enlever la selection de la page
merci pour vos reponse
Bonjour,
plusieurs méthodes
en voici une tu ajoutes cette instruction après la copie.
application.cutcopymode=falsere merci a toi de t'occuper de moi
autre petit probleme ce qu'il met pas a jour la deuxieme feuille
quand je rentre des valeur dans la premiere feuille les modification ne se mette pas a jour dans le deuxieme classeur ca me fait grincer des dents:
Private Sub Worksheet_Activate()
Dim wkA As Workbook, wkB As Workbook
Dim chemin As String, fichier As String
'classeur A qui contient la macro
Set wkA = ThisWorkbook
Dim X As Byte
On Error Resume Next
X = Len(Workbooks("JANVIER").Name)
If X > 0 Then Workbooks("JANVIER").Close True
'chemin ou se trouve le fichier B
chemin = "E:\new alky\ALKY\2015\"
'nom du fichier B
fichier = "JANVIER.xlsm"
'ouvre le fichier B
Workbooks.Open chemin & fichier
'met en variable le classeur B
Set wkB = ActiveWorkbook
'copie la feuille "feuil1" du classeur A dans la feuille 1 dans le classeur B
wkB.Sheets("eric").Cells.Copy
wkA.Sheets("feuil2").Cells.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
wkB.Close True 'ferme et enregistre le classeur B
Range("a6").Select
End Sub
merci a vous
re merci a toi de t'occuper de moi
autre petit probleme ce qu'il met pas a jour la deuxieme feuille
quand je rentre des valeur dans la premiere feuille les modification ne se mette pas a jour dans le deuxieme classeur ca me fait grincer des dents:
Private Sub Worksheet_Activate()
Dim wkA As Workbook, wkB As Workbook
Dim chemin As String, fichier As String
'classeur A qui contient la macro
Set wkA = ThisWorkbook
Dim X As Byte
On Error Resume Next
X = Len(Workbooks("JANVIER").Name)
If X > 0 Then Workbooks("JANVIER").Close True
'chemin ou se trouve le fichier B
chemin = "E:\new alky\ALKY\2015\"
'nom du fichier B
fichier = "JANVIER.xlsm"
'ouvre le fichier B
Workbooks.Open chemin & fichier
'met en variable le classeur B
Set wkB = ActiveWorkbook
'copie la feuille "feuil1" du classeur A dans la feuille 1 dans le classeur B
wkB.Sheets("eric").Cells.Copy
wkA.Sheets("feuil2").Cells.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
wkB.Close True 'ferme et enregistre le classeur B
Range("a6").Select
End Sub
merci a vous
Bonjour,
l'exécution de cette macro qui tu actives une feuille du classeur dans lequel se trouve cette macro. si il n'y a pas de mise à jour c'est que cette condition n'est pas remplie.