Ciao Ennio,
in access quando si va a popolare la proprietà ControlSource con una funzione o una formula bisogna usare il linguaggio anglosassone, la stessa cosa vale per Excel.
nel tuo caso puoi modificare la riga così:
oWsh.Range("O" & Riga).Formula = "=IF(ISERR(O21/R7),0,O21/R7)"
se hai dubbi su come scrivere la formula puoi inserirla in Italiano nella cella A1 di un nuovo foglio di lavoro in un nuovo file di excel, nel tuo caso =SE(VAL.ERR(O21/R7);0;O21/R7)
poi dalla finestra immediata VBA di Excel scrivi:
? Application.Sheets(1).Range("A1").Formula
e ti verrà stampato l'equivalente in lingua anglosassone
=IF(ISERR(O21/R7),0,O21/R7)
Ciao
Giorgio Rancati