Const fileToOpen = "d:\test.txt" Main() Sub Main() 'create an array of all the items in the text file TextArray = TextEntries(fileToOpen) on error goto 0 Set ivApp = CreateObject("iView.Application") Set ivCat = ivApp.ActiveCatalog For Each ivItem In ivCat.Selection for each t in TextArray if t = ivItem.Name then ivItem.Annotations.Keywords = ivItem.Annotations.Keywords & "; lavo" end if Next Next End Sub function TextEntries(fileToOpen) Set fs = CreateObject("Scripting.FileSystemObject") Set ts = fs.OpenTextFile(fileToOpen) dim newArray() do until ts.AtEndOfStream s = ts.ReadLine on error resume next redim preserve newArray(ts.Line) newArray(ts.Line) = s loop Set fs = Nothing TextEntries = NewArray End function