oRange = "catp" o = GETOBJECT(,'excel.application') ThisNewName = oRange amHere = 0 FOR i = 1 TO o.Names.Count &&&&&&&&&&&&&&&&&&&&& shouldn't this suffice thisHere = thisNewName IF i < o.Names.Count &&&&&&&&&&&&&&&&&&&&&&&&&&& should I need this ? thisOne = ALLTRIM(LOWER(o.Names[i].name )) ? trans(amhere) + " " +o.Names[i].name +" "+ TRANSFORM(i) +" "+ TRANSFORM( o.Names.Count) IF thisHere$thisOne amHere = amHere + 1 ? trans(amhere) + " " +o.Names[i].name o.Names[i].delete endif endif ENDFOR