Add a reference to "Microsoft Scripting Runtime" and try an alternative (instead of Open Fname(K)...):
Dim fso As Scripting.FileSystemObject
Dim ts As Scripting.TextStream
Set fso = New Scripting.FileSystemObject
Set ts = fso.OpenTextFile(Fname(K), ForReading, False, TristateUseDefault)
Dim allText As String
allText = ts.ReadAll
MsgBox allText
ts.Close