Patent ID: 8707156

Claim:
A processor-implemented method for processing a command to insert a new cell region into a spreadsheet, the method comprising: determining that the processing of the command requires that one or more existing cell regions of the spreadsheet be repositioned to avoid a layout conflict between the one or more existing cell regions and the new cell region, wherein a cell region is a group of cells belonging to the same entity or object, or, sharing in common the same data source; subsequent to determining that the processing of the command requires that one or more existing cell regions of the spreadsheet be repositioned, generating a plurality of repositioning plans for repositioning one or more existing cell regions of the spreadsheet in a manner that will avoid a layout conflict, each repositioning plan specifying a unique combination of repositioning operations and an order for performing the repositioning operations, each repositioning operation specifying a proposed movement of at least one cell region of the one or more existing cell regions from its current position to a new position; subsequent to generating the plurality of repositioning plans, selecting a repositioning plan from the plurality of repositioning plans based on predefined criteria; subsequent to selecting the repositioning plan, executing the repositioning operations of the selected repositioning plan in the order specified by the repositioning plan to reposition one or more cell regions, the repositioning of the one or more cell regions accomplished while preserving cell properties of each cell in an existing cell region; and inserting the new cell region.