Creating polygon from page size using ArcMap

I was wondering about the same but found that there is no such out-of-the-box tool.

I made an add-on for this. You can download it here: http://www.arcgis.com/home/item.html?id=a9b032f739254ebeb6221c9294ebc886


From the ArcGIS online help under the "Data Frame" class, DataFrame example 4 shows you how to do this:

The following script converts a data frame's extent object into a polygon feature so that it can be used with the SelectLayerByLocation_management function.

import arcpy
mxd = arcpy.mapping.MapDocument(r"C:\Project\Project.mxd")
df = arcpy.mapping.ListDataFrames(mxd, "Transportation")[0]
lyr = arcpy.mapping.ListLayers(mxd, "Accidents", df)[0]

#The DataFrame extent object is converted into a polygon feature so it can be used with the SelectLayerByLocation function.

dfAsFeature = arcpy.Polygon(arcpy.Array([df.extent.lowerLeft, df.extent.lowerRight, df.extent.upperRight, df.extent.upperLeft]),
                            df.spatialReference)
arcpy.SelectLayerByLocation_management(lyr, "INTERSECT", dfAsFeature, "", "NEW_SELECTION")

mxd.save()
del mxd