Fai la tua domanda
0

LibreOffice Calc - Estrarre numeri da celle alfanumeriche (posizioni non fisse)

chiesto il 2019-01-02 20:01:37 +0100

Immagine gravatar per mtmlbpg
Linux Xubuntu 4.15.0-43-generic #46 
LibreOffice Versione: 6.0.7.3 Build ID: 1:6.0.7-0ubuntu0.18.04.2 Thread CPU: 4; SO: Linux 4.15; Resa interfaccia: predefinito; VCL: gtk3;  Versione locale: it-IT (it_IT.UTF-8); Calc: group

Salve a tutti, questo è un problema noto nel settore dei fogli di calcolo. È stato risolto nel mondo Microsoft da TuttoExcel, tramite la produzione di un add-in, (https://www.tuttoexcel.it/add-in-funz...) ma non riesco ad importare le macro in LibreOffice Calc.

Il Problema

Se in un foglio di calcolo c'è una serie molto lunga di celle che contengono delle frasi con all'interno dei numeri in posizioni "casuali", quindi non risolvibili con la funzione Stringa.Estrai, come si fa ad estrarre detti numeri, e riportarli in una colonna a fianco, togliendo tutto il testo?

Allegato di Esempio

C:\fakepath\Estrarre Numeri da Celle Alfanumeriche in Posizioni Casuali.ods

Grazie in anticipo per il vostro aiuto.

modifica retag flag offensive close merge delete

3 Answers

0

risposto il 2019-01-05 22:33:41 +0100

Immagine gravatar per akurery

Un po' più semplice, anche se non molto:

=STRINGA.ESTRAI(A2;RICERCA("[:digit:]";A2);RICERCA("[:alpha:]";A2;RICERCA("[:digit:]";A2))-RICERCA("[:digit:]";A2))

Facendo uso delle espressioni regolari [:digit:] (una cifra qualsiasi) e [:alpha:] (un carattere alfabetico qualsiasi) è necessario che in Strumenti -> Opzioni -> LibreOffice Calc -> Calcola sia attivata l'opzione Permetti espressioni regolari nelle formule.
Se nel tuo testo non ci sono numeri la formula restituirà #VALORE!, eventualmente puoi integrare la formula per gestire eventuali errori.
Se invece ci sono numeri in più punti del testo, verrà estratto solo il primo numero.

modifica flag offensive delete link more

Commenti

Wow, grande! Non conoscevo questo sistema...mò me lo copio e lo metto da parte :)

Immagine gravatar per gioh66 gioh66 ( 2019-01-06 09:53:22 +0100 )modifica

È vero, molto interessante questa soluzione, e soprattutto sintatticamente molto elegante. Grazie... funziona. Soprattutto molto interessante perché non ha problemi se i numeri sono separati da spazi, oppure se sono contenuti all'interno di parole. Grazie ancora.

Immagine gravatar per mtmlbpg mtmlbpg ( 2019-01-09 12:11:10 +0100 )modifica
0

risposto il 2019-01-04 11:25:42 +0100

Immagine gravatar per mtmlbpg

Mamma mia che nidificazione ! Grazie molte... funziona.

A presto.

modifica flag offensive delete link more
0

risposto il 2019-01-03 22:46:37 +0100

Immagine gravatar per gioh66

updated 2019-01-05 14:45:22 +0100

Salve prova così: in B2 metti

=ANNULLA.SPAZI(STRINGA.ESTRAI(SOSTITUISCI(A2;" ";RIPETI(" ";100));SE.ERRORE(SE.ERRORE(SE.ERRORE(SE.ERRORE(SE.ERRORE(SE.ERRORE(SE.ERRORE(SE.ERRORE(SE.ERRORE(TROVA(0;SOSTITUISCI(A2;" ";RIPETI(" ";100)));TROVA(1;SOSTITUISCI(A2;" ";RIPETI(" ";100))));TROVA(2;SOSTITUISCI(A2;" ";RIPETI(" ";100))));TROVA(3;SOSTITUISCI(A2;" ";RIPETI(" ";100))));TROVA(4;SOSTITUISCI(A2;" ";RIPETI(" ";100))));TROVA(5;SOSTITUISCI(A2;" ";RIPETI(" ";100))));TROVA(6;SOSTITUISCI(A2;" ";RIPETI(" ";100))));TROVA(7;SOSTITUISCI(A2;" ";RIPETI(" ";100))));TROVA(8;SOSTITUISCI(A2;" ";RIPETI(" ";100))));TROVA(9;SOSTITUISCI(A2;" ";RIPETI(" ";100))));100))

e trascina in basso. Per funzionare il numero deve essere seguito da uno spazio come nell'esempio.

modifica flag offensive delete link more

Commenti

Grazie a te del riscontro!

Immagine gravatar per gioh66 gioh66 ( 2019-01-04 12:50:14 +0100 )modifica
Login/Signup to Answer

Question Tools

1 follower

Stats

Chieste: 2019-01-02 20:01:37 +0100

Seen: 126 times

Last updated: Jan 05