If avec condition de date

now est défini dans la loop() avec DateTime now = RTC.now();

Toute variable existe dans un environnement donné. Ici now n'existe que dans loop(). Dans ta fonction StoreStatue() elle n'existe pas. Donc soit tu déclares now en globale (avant setup() quoi) et tu la mets à jour avec now = RTC.now(); , soit tu passe now en paramètre de ta fonction comme ça

void loop()
...
StoreStatue(now);
}

void StoreStatue (DateTime now) { // ici now n'est pas le même que celui de loop() mais sera identique en tout point
...
}