(* Find recently modified entries in the Address Book Input: a time interval (backwards from today) in the variable "daysBeforeToday" Output: a string on the clipboard, format: YYYY-MM-DD (tab) Name (return) ©2009, Michael Bach, *) set daysBeforeToday to 7 -- <<< change as desired or read from a dialog tell application "Address Book" copy (current date) - daysBeforeToday * 24 * minutes * 60 to referenceDate copy (every person whose (modification date > referenceDate)) to modifiedPersons set s to "" repeat with aPerson in modifiedPersons set d to ((modification date) of aPerson) -- now change to international format and forget the hours set dateString to (year of d as string) & "-" & (my twoDigits((month of d) as number)) & "-" & (my twoDigits(day of d) as string) set s to s & dateString & tab & (name of aPerson) & return end repeat set the clipboard to s --for pasting into other applications s -- to view immediately in the script editor end tell on twoDigits(aNumber) -- trivial utility for formatting if aNumber < 10 then return "0" & (aNumber as string) return (aNumber as string) end twoDigits