Limpiando los años de nacimiento 2000 en mi libreta de direcciones

Hace algunos años (o en realidad, más probablemente, en 2000), por alguna razón, birthdaysa los que no tenían birth year(pero tenían y tienen mes y día correctos) se les dio automáticamente el birth year2000 en mi libreta de direcciones. Hay cientos de ellos (entre miles que están bien).

¿Hay alguna manera de seleccionar estas tarjetas, tal vez por Smart Group o algo similar, para que pueda eliminar manualmente el birth year2000?


NB: Es posible que también pueda ejecutar un AppleScript con un poco de ayuda. :) OS X 10.8.5 instalado.

¡Mi libreta de direcciones tiene un montón de personas cuyo año de nacimiento es 1900!
@DanielLawson El siguiente script de adayzdone (v1) funciona de maravilla. Lo que hice: abrir la Libreta de direcciones, hacer clic en Todos los contactos, cerrar la Libreta de direcciones, cerrar la conexión a Internet, copiar y pegar en el Editor de AppleScript, presionar Compilar, presionar Ejecutar, esperar hasta que desaparezca "En ejecución...". La libreta de direcciones ahora está abierta con las tarjetas con 2000 seleccionadas. Póngalos en un grupo para seguir trabajando...

Respuestas (2)

Intentar:

set targetYear to "2000"
set targetGroup to {}

tell application "Address Book"
    set thePeople to every person whose birth date ≠ missing value
    repeat with aPerson in thePeople
        set birthYear to (aPerson's birth date)
        if my yearCheck(birthYear, targetYear) then set end of targetGroup to (contents of aPerson)
    end repeat
    if targetGroup ≠ {} then set selection to targetGroup
    activate
end tell

on yearCheck(theDate, theYear)
    if theYear = (year of theDate as text) then return true
    return false
end yearCheck

Agregado por el OP para novatos como él. Esto funciona. Lo que hice: abrir la libreta de direcciones, hacer clic en Todos los contactos, cerrar la libreta de direcciones, cerrar la conexión a Internet (solo para estar seguro), copiar y pegar el script anterior en el Editor de AppleScript, presionar Compilar, presionar Ejecutar, esperar hasta que aparezca "En ejecución... "desaparece". La libreta de direcciones ahora está abierta con las tarjetas con 2000 seleccionadas. Póngalos en un grupo para seguir trabajando...

No cambiará nada. Seleccionará las cartas.
¡Funciona de maravilla! Odio preguntar esto, pero... Resulta que hay 632 tarjetas con el año 2000. Incluso más de lo que sospechaba. ¿Podría por favor hacer que el script elimine los años, pero mantenga los meses y los días? ¿Dije por favor?
No creo que puedas quitar el año. Intenté hacerlo manualmente y no funciona en 10.6.8
Creo que puedo en 10.8.5, al menos parece que puedo cambiar "22 de diciembre de 2000" a "22 de diciembre" (pero no a "Frog 22"). (Quizás haga otra pregunta en el sitio). Bueno, ahora tengo la selección en un grupo, así que es un gran comienzo. ¡Muchas muchas gracias!
FYI: Markhunte descubrió que establecer el año en 1604 hace que el año "desaparezca".
Ja... ¡Creo que es la solución más extraña que he visto!

Accidentalmente publiqué una respuesta aquí sobre esta pregunta destinada a:

Eliminar solo los años de nacimiento de un grupo en mi libreta de direcciones

Como está relacionado, dejaré un enlace a la otra pregunta.

¡Excelente! 1604. Lo intentaré más tarde hoy. Gracias, se ve bien.
Publiqué la respuesta en su otra pregunta donde se suponía que debía ir. Si funciona, ¿puedes aceptarlo o comentarlo? Salud