DIMENSION pagename(5,2) pagename(1,1) = "appscrn1.spr" && i.e. 'appscrn1' is a pagename on the form pagename(2,1) = "appscrn2.spr" pagename(3,1) = "appscrn3.spr" pagename(4,1) = "appscrn4.spr" pagename(5,1) = "appscrn5.spr" FOR i = 1 TO ALEN(pagename,1) pagename(i,2) = i && the array row is the pageorder value ENDFOR DODEFAULT() i = 1 WITH THIS.PageFrame1 i = 1 lnitem = 0 DO WHILE i <= .pagecount lnitem = ASCAN(pagename,.objects(i).name) IF lnitem = 0 .REMOVEOBJECT(.objects(i).name) ELSE *--There already is a page 3 so the below will not work if *--linitem is 3 *--The page whose pageorder value is 3 now will be changed *--to another value but we haven't gotten there yet .objects(i).pageorder = lnitem && error - this pageorder value is already used of course i = i + 1 ENDIF ENDDO ENDWITH RETURN .T.TIA