You and I are going to have to agree to disagree on that one
As it depends on experience, on which context and who are the final users …
Like I wrote, in a pro context - so obviously not for those begging for help for their homework or
playing with ChatGPT without learning Excel basics neither VBA basics so obviously neither for a 'new VBA' born -
if - again - the VBA procedure is located in the same workbook than the worksheets,
if for some reason the workbook can't be protected against users manual operations,
like for example an user can rename any worksheet as per its will - year change, project name whatever -
so the best easy efficient safer stronger way is to qualify the worksheets by their codenames obviously rather than their names,
that avoids some ticket incidents like when the 'technician' comes to the owner computer
to just see its 'big crucial issue' claimed comes only 'cause the worksheet was renamed !
It is also a way to face an user with its ill will which was warned to not delete a specific worksheet,
always arguing "that don't work" but the other users do not have any issue, he did not care,
believe he is so smart in the coffee room telling cracks to other people, so after a meeting
with his boss demonstrating how bad this user was, never add anymore bad news from him …
Using directly CodeNames avoids to create useless Worksheet variables,
a bad use seen whatever the forum, even from VBA experts, Gurus, MVP and so on …
Yes obviously working with worksheet name or its index can be easier for 'newbies'.
But at least a VBA forum can show other ways …