'MacroName:NewMacro 'MacroDescription: copies 245 to 240 option explicit Sub Main Dim CS As Object Set CS = CreateObject("Connex.Client") dim tag245$, tag240$, lang$ dim indicator1%, indicator2%, pos% CS.GetField "245", 1, tag245$ indicator1% = cint(mid(tag245$, 4, 1)) indicator2% = cint(mid(tag245$, 5, 1)) tag245$ = mid(tag245$, 6) pos% = instr(tag245$, chr(223) & "b") if pos% = 0 then pos% = instr(tag245$, chr(223) & "c") if pos% = 0 then tag240$ = tag245$ else tag240$ = trim(left(tag245$, pos% - 1)) end if 'filing indicators, clean up tag240$ = mid(tag240$, indicator2% + 1) tag240$ = ucase(left(tag240$, 1)) & mid(tag240$, 2) if not(right(tag240$, 1) like "[A-Z,a-z,0-9]") then tag240$ = left(tag240$, len(tag240$) - 1) tag240$ = trim(tag240$) if indicator1 = 0 then tag240$ = "1300 " & tag240$ else tag240$ = "24010" & tag240$ end if tag240$ = tag240$ & ". " & chr(223) & "l xxx" CS.GetFixedField "Lang", lang$ CS.SetFixedField "Lang", "xxx" CS.AddField 1, "0411 xxx " & chr(223) & "h " & lang$ CS.AddField 1, tag240$ End Sub