Hace algunos años (o en realidad, más probablemente, en 2000), por alguna razón, birthdays
a los que no tenían birth year
(pero tenían y tienen mes y día correctos) se les dio automáticamente el birth year
2000 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 year
2000?
NB: Es posible que también pueda ejecutar un AppleScript con un poco de ayuda. :) OS X 10.8.5 instalado.
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...
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.
Daniel
Řídící