La bonne nouvelle??? be je viens de finir il y a 1h une serie de fonctions qui font exactement ce que tu demandes!  
En gros j'ai 2 fichiers excel... l'un d'entre eux doit alimenter l'autre... les users doivent cliquer sur la ligne a updater, puis cliquer sur un bouton qui lance une macro et bim...la seule contrainte, c'est que les 2 fichiers aient au moins une colonne ID qui fasse le lien... Voilà le code:
 
Code :
 - Dim appxl As Excel.Application
 -  Dim fichier As Window
 -  Dim feuille As Worksheet
 -  Dim id As String
 -  Dim param1 As String
 -  Dim param2 As String
 - Sub connectExcel()
 - Set appxl = CreateObject("Excel.application" )
 - With appxl
 -     .Workbooks.Open "file1.xls"
 -     .Visible = False
 - End With
 - Set feuille = appxl.Sheets("Feuil1" )
 - End Sub
 - Sub disconnectExcel()
 - appxl.Workbooks(Workbooks.Count).Save
 - appxl.Workbooks(Workbooks.Count).Close
 - End Sub
 - Function retrieveData()
 -     Selection.Rows.EntireRow.Select
 -      
 -     Rng = Selection.Rows.Count
 -     If (Rng <> 1) Then
 -         retrieveData = 0
 -         MsgBox "Vous devez selectionner UNE et UNE SEULE ligne  "
 -         Exit Function
 -     Else
 -         id = Selection.Columns(1)
 -         param1 = Selection.Columns(4)
 -         param2 = Selection.Columns(8)
 -         retrieveData = id
 -         Exit Function
 -     End If
 -    
 - End Function
 - Function chercherLigne(id)
 -     i = 0
 -     chercherLigne = 0
 -     Dim cell As Range
 -     For Each cell In feuille.Range("A1:A300" )
 -        i = i + 1
 -        If cell.Value <> "" Then
 -             If Int(cell.Value) = Int(id) Then
 -                chercherLigne = i
 -                Exit Function
 -             End If
 -            
 -        End If
 -                
 -     Next
 - End Function
 - Function BoutonUpdate_QuandClic()
 -    connectExcel
 -    result = retrieveData
 -    If (result <> 0) Then
 -         ligne = chercherLigne(result)
 -         If (ligne <> 0) Then
 -             feuille.Cells(ligne, "B" ) = param1
 -             feuille.Cells(ligne, "D" ) = param2
 -         Else
 -             MsgBox "ID non trouvé dans le fichier destination"
 -         End If
 -    disconnectExcel
 -  
 -    End If
 -  
 - End Function
 
  | 
 
 
 
Si tu as des questions...n'hesite pas... (je sais je sais..je commente pas mon code! mea culpa