'Avant la macro je selectionne une plage sur 8 colonnes et 1 ligne
Sub Macro4()
'
' Touche de raccourci du clavier: Ctrl+o
' Mémorise la ligne
ligne = ActiveCell.Row
' Mémorise nom du fichier
nom = ActiveWorkbook.Name
'copie de la plage précédemment selectionnée
Selection.Copy
'ouvre le fichier qui demande les pièces
Workbooks.Open "C:\Documents and Settings\JeanMarie\Bureau\essai n1kjh"
Windows("essai n1kjh.xls").Activate
' Selectionne la première cellule du tableau
Range("B7").Select
' Cherche la première ligne vide
Do While Not (IsEmpty(ActiveCell))
NbLigne = NbLigne + 1
Selection.Offset(1, 0).Select
Loop
'Colle les veleurs des cellules
Selection.PasteSpecial Paste:=xlPasteValues
' Selectionne la première cellule du tableau
Range("B7").Select
' Cherche la première ligne vide
Do While Not (IsEmpty(ActiveCell))
NbLigne = NbLigne + 1
Selection.Offset(1, 0).Select
Loop
'Active le premier fichier
Windows(nom).Activate
'Prend le titre de la feuille
Range("I1").Select
'Copie du titre
Selection.Copy
Windows("essai n1kjh.xls").Activate
'permet de se mettre dans la bonne cellule et colle le titre
Selection.Offset(-1, -1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Selectionne une cellule et supprime le contenu
Selection.Offset(0, 3).Select
Selection.ClearContents
'Selectionne une cellule et supprime le contenu
Selection.Offset(0, 1).Select
Selection.ClearContents
'Formule posant problème, la formule est bonne les adresse de cellule également _
mais ne prends pas les cellule de la bonne feuille "nom"
ActiveCell.FormulaR1C1 = "=R" & ligne & "C4-R" & ligne & "C8"
'Ferme et enregistre le fichier
Windows("essai n1kjh.xls").Activate
ActiveWorkbook.Save
Workbooks("essai n1kjh.xls").Close
Windows(nom).Activate "C9"