Ciao paolomoe
se la tua intenzione è quella di dedicarti alla programmazione, sappi che casi come quello che esponi sono molto frequenti.
Per risolverli non c' è altro modo che attivare il debug ed eseguire il codice passo passo e vedere il valore delle variabili.
Nel tuo caso di celle unite oActiveCell assume (forse più correttamente?) il tipo CellRange, ossia un intervallo di celle e non più una cella singola, per cui non esiste la Proprietà string ed il codice ovviamente dà errore.
In questo caso devi integrare la istruzione così : oActiveCell.getCellByPosition(0, 0).string
Attenzione che questo funziona solo per i Range, per cui dovrai fare un IF che controllo il tipo di oActiveCell, ad esempio usando il metodo getIsMerged().
In alternativa il metodo DataArray funziona sempre, potresti usarlo e prelevare il valore (0)(0).
Più che darti una risposta ti consiglierei un metodo anche se un pò impegnativo, ossia familiarizzare con SDK di LibreOffice, dove trovi tutti gli oggetti di questo ambiente, con le relative proprietà e metodi, in questo caso com.sun.star.sheet.SheetCellRange, ed ovviamente studiare il testo di Andrew Pitonyak OpenOffice.org Macros Explained.
Saluti Nicola