...das ist mein neuer code (also mit do-loop):
Sieht doch gut aus.

Dass das mit dem Speichern/Lesen im EEPROM nicht funktioniert, liegt aber nicht am DO-LOOP, sondern an deiner Verwendung von Readeeprom. Ich würde die neuere Syntax mit ...
Dim Variable As Eram Byte
... nehmen. Damit kann man auch in Schleifen lesen und schreiben.

Kleiner Hinweis noch: Ich wäre mit dem allzu häufigen Schreiben/Lesen des EEPROMs vorsichtig. Die Lebensdauer ist begrenzt. Eigentlich speichert man da nur etwas rein, bevor der uC abgeschaltet wird und liest das wieder ein, wenn er neu gestartet wird;- oder man schreibt da wichtige einmalige Programmeinstellungen rein, die dauerhaft so bleiben und wenig geändert werden (z.B. Eichwerte, Benutzereinstellungen ...).

Gruß Dirk