Ciao,
Ciao!
premetto che non ho provato la macro proposta.
In ogni caso il tema è interessante e si presta a svariate speculazioni.
Confesso pure che non ho mai affrontato direttamente questo problema, tuttavia
vorrei notare che il riconoscimento (umano) di una data stringa come cifra
numerica dipende da molti fattori, tra i quali la "presentazione" della
stringa, non è sempre il più determinante.
Decisamente...
Un ruolo importantissimo è infatti giocato dal contesto, cioè da tutte quelle
informazioni relative alla provenienza, tipo di contenuto e finalità del
documento.
[...]
Detto questo, la mia proposta è:
prima di buttarci a capofitto nella stesura del codice, definiamo meglio il
problema, magari cercando in internet se ci sono documenti che parlano di
questo particolare problema.
Da quel che ho capito, ma potrei sbagliarmi, l'intenzione originale di
Bart era quella di manipolare dei numeri che sicuramente sono prezzi, di
conseguenza i casi si restringono già molto, anche dal punto di vista
delle possibili formattazioni "sbagliate" che puoi avere...
Se si fosse trattato di ottenere un qualcosa che "genericamente", dato
un numero fosse stato in grado di decidere come formattarlo non ci avrei
neanche provato...
Un secondo passo poi sarebbe quello di mettere giù qualcosa di simile ad una
specifica, in modo da restringere il problema e definire meglio le finalità
del programma.
E qui purtroppo è colpa mia che non sono abituato a lavorare con
specifiche chiare, forse perchè ogni volta che mi viene chiesto di fare
qualcosa durante lo sviluppo vengono aggiunte richieste su richieste e
quindi pianificare all'inzio serve a poco o niente...
Se si arrivasse a questo punto, potremmo elaborare uno o più algoritmi (o
recuperarne di esistenti) che siano efficaci e risolutivi, almeno nei limiti
imposti dalla ns specifica.
A livello di implementazione poi, proporrei di fare un add-in per Calc.
gli add-in sono del pacchetti UNO (che quindi si possono distribuire e
installare facilmente) e servono per aggiungere funzioni a Calc.
Qui dipende da quel che ne vuoi fare, credo.
Se ad esempio hai già delle macro che gestiscono in qualche modo i
valori nelle celle potrebbe essere più facile integrare la soluzione in
basic, o non cambia molto? (aggiungo che non ho ben presente come
funzionano le add-in e quindi la mia frase può essere completamente
sbagliata)
Il linguaggio di implementazione non potrebbe più essere il Basic ma dovrebbe
essere uno tra C++/Java o Python
Come ha detto anche Lido la cosa non è così immediata, ad esempio mi
piacerebbe conoscere questi linguaggi, ma al momento non ho il tempo per
impararli...
In effetti il python sarebbe un ottima scelta, dato che offre strumenti
avanzati per la manipolazione delle stringhe.
In ogni modo, in questo messaggio segnalavo la presenza del servizio API
com.sun.star.util.TextSearch
che permette di ricercare del testo usando vari algoritmi, tra cui le Regular
Expressions.
Penso che le espressioni regolari possano essere molto utili anche in questo
contesto.
Probabilmente sì...anzi, senza il probabilmente! ;-)
Dato che supporta le espressioni regolari si possono eliminare molti
degli if che ho messo nella mia macro e scrivere qualcosa di un po' più
semplice.
Ciao!
Ema.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]