New user on ArcMap - Working with shapefiles...

Question: the shapefile I am working on, a polygon is a plot of land, each plot of land has a history of owners. I am currently having to copy/paste the ploygon in mapview, edit the attributes, and repeat...

Data includes the owner, price paid, length of ownership, acreage, etc.

looking for a quicker way to import or "join" or connect excel information with each plot/polygon...

so in short - the issue is one polygon, many owners with differing information of said polygon

Not a python expert yet...


  • 3
    It is difficult to know what is being asked here. A shapefile is not organized into "layers"; typically, a shapefile is the data source for a single layer in an ArcGIS frame. The likely solutions to questions that sound like this consist of importing and joining data. Methods have been described in many questions on this site. They can be found with a search for Excel and shapefiles.
    – whuber
    Dec 22 '11 at 21:33
  • 1
    Unfortunately as new user, still getting proper terminology down. Within my shapefile I have a polygon with is a plot of land. That plot of land (polygon) has a history of (3) owners. To create (3) owners I am currently copying the original polygon (2) additional times to show all three owners and price each paid, year purchased and year sold. Is there another way to create the additional polygons other than copy/paste in the map view?
    – dreki
    Dec 22 '11 at 22:05
  • 2
    Yes, there are many ways. Since nobody has yet ventured a reply, why don't you edit your question to include this information? Let us know what you want to accomplish and the kind of data you have, then see what suggestions you get.
    – whuber
    Dec 22 '11 at 22:50

In ArcGIS, the way you normally handle many-to-one relationships such as you describe is to use a relate or relationship class.

When you relate your parcels layer to your owners table, you establish a relationship that says "this parcel corresponds to these owner records".

To do this you need a primary key in your parcels layer and a foreign key in your owners table.

Once you have established a relationship you can then identify or select related records -- a relationship is bidirectional so you can select an owner and then select its related parcel or vice versa.

Take note this point from the first link about ObjectIDs though:

  • If you relate to a table that does not have an ObjectID column (such as delimited text files or OLE DB tables), you will not be able to apply selections using the relate. The Related Tables command from the Table window's Table Options menu will list the relate, but it will be unavailable. The Identify tool, however, can still be used to find related records.


I searched the ArcScripts site and found these two Python scripts. They are written for Arc 9.3. Each has documentation included. I'm not able to test the scripts. They appear to solve the exact problem you are facing, multiple joins per Polygon. The scripts should create a polygon feature for each joined record in the Excel table, joining the attributes. If Excel is not supported, just copy to a new table or dbf.

You can search the Arcscripts site yourself. I recommend sorting the results by Modified to push the recent entries to the top.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.