@karolus,
No, you misunderstood my hint.
Sheets(something) expects a numeric sheet index. Yes, the translator doesn’t mind having a text string as a parameter (even though it expects an integer).
The translator does not argue with the programmer - what if you use a string that can be interpreted as a number? Something like Sheets(“1”)? Therefore, the parameter simply tries to convert the string to a value and, as in this case, calls Sheets(0) - and there is always a zero sheet in the spreadsheet - so no error occurs.
Tibor immediately gave the correct answer - “write the code as expected and you will not have problems”
I went the other way. “A detailed question contains half of the correct answer.” This question was not detailed and I was trying to push the OP into a more detailed statement of the problem…