ŠMANKOTE
Cestu jsem nastínil výše, stačí dát to do kódu
Sub Makro1()
Dim sSourcePath As String, sSourceFileSheet As String, sSource As String
sSourcePath = ThisWorkbook.Path
sSourceFileSheet = "[zkratky.xls]seznam prof.org."
sSource = sSourcePath & "\" & sSourceFileSheet
Dim sFormula As String
sFormula = "=INDEX('" & sSource & "'!C2,MATCH(RC[-3],'" & sSource & "'!C1" & ",0))"
With Range("D2:D27")
.FormulaR1C1 = sFormula
.Value = .Value
.Replace What:="#N/A", Replacement:="nenalezeno", LookAt:=xlWhole
Range("A2:A27").Value = .Value
.ClearContents
End With 'Range("D2:D27")
End Sub
kód v této podobě funguje pro soubory umístěné ve stejné složce - je možno upravit
soubor zkratky není třeba otevírat
edit: název proměnných v definici Dimcitovat