› Sviluppare funzionalita su Microsoft Office con VBA › SOMMA(…) –> SUM(…)
-
AutoreArticoli
-
Ho salvato una tabella excel in execel 97-2004 sotto MAC.
Poi ho trasferito la tabella salvata, su un PC Windows e quindi ho riaperto la tabella su questo.
In alcune celle vedevo l'errore #NOME?
???
E ho scoperto che le funzioni originali SOMMA(...) erano state tradotte in SUM(...)
e le funzioni CONTA.VALORI(...) in COUNTER(...) (mi sembra di ricordarmi così ...)
Che davano, ovviamente, quell'errore.
Qualcuno sa spiegarmi cosa potrebbe essere successo?
Grazie carissimi!
Probabilmente CONTA.VALORI è diventato COUNTA(). Evidentemente il passaggio di formato ha salvato tutte le formule nel corrispondente inglese.
In Windows: posizionati su una cella incriminata, apri l'editor di codice (Alt-F11), attiva la finestra immediata (Ctrl-G), scrivi:
activecell.Formula=activecell.Formula
e dimmi cosa succede 🙂Lo farò certamente VF se mi riuscirà di riprodurre il caso.
Ovviamente, capito l'inghippo, al momento, ho corretto le funzioni perché dovevo andare avanti col lavoro.
Vedrò cosa posso fare, il PC windows è la cassa di un Bar-Tabacchi e puoi immaginare la confusione, fra saltare continuamente dall'applicativo che legge i codici a barre dei pacchetti di sigarette in vendita e il mio programma per generare l'ordine per la LOGISTA TABACCHI ...
Ti farò sapere, grazie VF!
Forse
activecell.Formula=activecell.FormulaLocal
???
???
A me funziona anche con .Formula = .Formula, ho visto che traduce in locale 🙂
Lo farò certamente VF se mi riuscirà di riprodurre il caso.
Da finestra immediata, una volta sola, per tutte:
Activesheet.usedrange.formula = Activesheet.usedrange.formula
risolve il problema in un colpo solo.
VF, il codice:
Set CC = Workbooks("ORDINE_CALCOLO.xls").Worksheets("Foglio1") CC.Range("G6").Formula = MM.Range("G6").Formula CC.Range("P6").Formula = MM.Range("P6").Formula CC.Range("Q6").Formula = MM.Range("Q6").Formula CC.Range("BJ6:DZ6").Formula = MM.Range("BJ6:DZ6").Formula CC.Range("BL3:BQ3").Formula = MM.Range("BL3:BQ3").Formula
Trasforma SOMMA(...) in SUM(...). Quando gira sotto Windows, sotto MAC no.
perché pensi che, se mettessi in coda a queste istruzioni:
Activesheet.usedrange.formula = Activesheet.usedrange.formula
risolverei il problema in un colpo solo.
?
Grazie VF
Abramo
-
AutoreArticoli