Ak to chceš robiť v Exceli, tak vo VBA pri otvorení zošita určíš pomocou metódy SetLinkOnData meno makra, ktoré sa má spúšťať pri každej aktualizácii dát z DDE servera. Malo by to ísť nejako takto:
Private Sub Workbook_Open()
SetLinkOnData "WinWord|'C:\MSGFILE.DOC'!DDE_LINK1", "OnDataChanged"
End Sub
Private Sub OnDataChanged()
Dim aCell As Range
Set aCell = Sheet2.Range("A1")
Set aCell = aCell.Offset(aCell.CurrentRegion.Rows.Count)
aCell.Value = Sheet1.Range("A1").Value
aCell.Offset(0, 1).Value = Sheet1.Range("A2").Value
End Sub
Tento kód treba vložiť ako makro zošita (Workbook), nie ako makro listu (Sheet).
Nijako som to netestoval, takže by som si v OnDataChanged pre istotu umiestnil bod prerušenia (napr. stlačením F9), že či sa to nespúšťa častejšie, než treba.
Keby som niečo také potreboval a nebol by som viazaný na Excel, napísal by som si na to samostatný program (napríklad v C/C++/C#). Ešte pred tým by som si zistil, či sa k tým dátam nedá dostať nejako inak, než cez DDE.