I think that it will work if MyCharCount is a constant:
Const MyCharCount = 5
. . .
ReDim MyArray(1 To MyLastRow) As String * MyCharCount
However, note that definitions like *String*5* allocate five characters, even if the text is shorter. For example:
Dim s As String * 5
s = "ab"
MsgBox "[" & s & "]" ' shows “[ab ]”
MsgBox Len(s) ' shows 5
It seems that the system appends spaces. Therefore, in contrast with normal strings, this approach requires additional memory for trailing spaces.
Theoretically you can declare a class module, that includes the Let and Get properties and which truncates the long strings or raises errors.