Igen, ez jó megoldás, akkor is lefut, ha a munkalap már védett állapotban van.
Fontos, hogy ugyanabban a makróban (programban ) legyen, ami aztán ír a cellákba.
Külön futtatva elképzelhető, hogy nem fogja megjegyezni az Excel ezt, ezért egy másik, külön futtatott sub megint védettnek fogja látni a lapot. (Ezt kipróbáltam, nekem működött külön Sub-ból. Egyik levédte így, a másik beleírt egy cellába)
Az persze jó, ha van egy főprogram, aminek az elején ez a kód lefut, majd a közben meghívott (CALL) rutinok írnak a védett cellákba.
Az viszont biztos, hogy ezt a fajta védelmet nem jegyzi meg az Excel, ha bezárod, majd újra kinyitod a fájlt.
Ha esetleg mégis problémába ütköznél, valami nem fut le, vagy hibát dob, (előfordulhat), akkor marad a triviális „B” terv, amikor a cellákba írás előtt feloldod a védelmet, beleírsz, majd visszarakod a védelmet.
Imre