Oppure

Loading
12/02/19 8:58
gigisoft
Salve a tutti,

per l'azienda dove lavoro ho creato una macro in un foglio excel in VBA;
l'ho scritta usando la versione 2016 di office, e funziona correttamente.

Il problema è che essa deve essere usata su diversi PC, dove funziona correttamente, tranne su uno, dove da un errore di esecuzione, in particolare nell'istruzione:

formattedValue = format(rArea.Columns(posCol).Rows(I).Value, "##0.00")


Cercando un po' in rete, poiché sul PC incriminato c'è una versione di office 2010, ho visto che il problema potrebbe essere la mancanza di una libreria che la macro usa;

confrontando le versioni di Office, abbiamo constatato che la libreria potrebbe essere una di queste:


Visual basic for application
Microsoft Excel 16.0 Object library
Microsoft Office 16.0
OLE Automation


per questioni burocratiche non possiamo installare sul PC in questione la versione 2016 di Office, per cui mi chiedevo se esiste un modo per installare/upgradare le suddette librerie, oppure se esiste un'alternativa alla funzione format che sia compatibile con la versione 2010.

Ringrazio anticipatamente a chi potrà aiutarmi.

Ciao.
aaa
18/02/19 9:42
gibra
Devi verificare la versione di Excel in uso ed agire in base a questa.
Controlla la proprietà Version, esempio:

Debug.Print Application.Version


potrai costruire un costrutto decisionale If/Then/End If che esegue una funzione invece di un'altra.

aaa