You could use global for simplicity or a local one if you really know what you're doing. Using variables will help you manipulate the array and have control then you should be able to think about what you need and apply those variables.
The skipping sheets bit i'm not sure, do you have several arrays or are you loading them into one array randomly? You need access to the text and then just call it in the same way.
Or character images again you could use a variable, set varChar using the same row but a different column like array.at(var,1). Then you set the portrait based on the current value of varChar, the actual text could match the name of the animation or something similar.