diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp
index 0292375d0f41d704cd55d9997a8cc45401d2ea80..54840006ef9bd218ebd704a8e099e2b99da2bc69 100644
--- a/Marlin/src/sd/cardreader.cpp
+++ b/Marlin/src/sd/cardreader.cpp
@@ -540,7 +540,7 @@ void CardReader::write_command(char *buf) {
 }
 
 void CardReader::checkautostart(bool force) {
-  if (!force && (!autostart_stilltocheck || ELAPSED(millis(), next_autostart_ms)))
+  if (!force && (!autostart_stilltocheck || PENDING(millis(), next_autostart_ms)))
     return;
 
   autostart_stilltocheck = false;