Ok. Per buona pratica di programmazione, nel costruttore dovresti inizializzare anceh tutti gli elementi della colonna 1, non solo quelli della colonna 0 (magari inizializzarli alla stringa vuota).

Hai diverse istruzioni if nel tuo primo codice, quindi presumo che possa venire saltato qualche ramo (then o else) che dovrebbe inizializzare una delle posizioni di tale indice.

Aggiungerei queste righe al costruttore:
codice:
        tab[0][1] = "";
        tab[1][1] = "";
        tab[2][1] = "";
        tab[3][1] = "";
        tab[4][1] = "";
        tab[5][1] = "";
        tab[6][1] = "";
        tab[7][1] = "";
        tab[8][1] = "";
        tab[9][1] = "";
Così sei sicuro che tutti gli elementi della matrice sono inizializzati e puoi usarli.


PS: certo che non è facile seguire uno stile di programmazione che usa una nomenclatura completamente all'opposto dello standard (nomi di classi con la minuscola e metodi con la maiuscola).


Ciao.