You are viewing a plain text version of this content. The canonical link for it is here.
Posted to utenti-it@openoffice.apache.org by Andrea Celli <a....@gmail.com> on 2013/07/31 10:23:08 UTC

[utenti-it] Estrarre dati da due fogli elettronici

Salve, ho un problema da risolvere e non so bene da che parte cominciare.
Devo ricostruire il catalogo di una biblioteca che, per motivi lunghi da
spiegare, ha perso pezzi strada facendo. Alla fine, sono riuscito a mettere
in due fogli elettronici due backup:
- uno molto vecchio, abbastanza completo sui libri più vecchi ma carente su
quelli più recenti e sui prestiti
- l'ultimo ,che chiamo NBU, è più aggiornato su prestiti e ultime
acquisizioni ma ha molti buchi "storici"
Sono fogli con circa 16000 righe. Quindi difficile da gestire a manina.
Il dato più semplice per individuare un libro è il "numero di carico":
veniva dato sequenzialmente da 1 a 17000 circa e si trova in colonna 8.

Quello che dovrei fare è
- scorrere il  vecchio back-up
- per ogni numero di carico, controllare se è presente in NBU
- se non è in NBU, copiare la riga su un nuovo foglio

Ho provato a cercare in rete, ma i suggerimenti che ho trovato sembrano
tutti relativi ad una funzione merge che richiede di verificare una per una
le righe da utilizzare. Forse ho letto male!

Comunque, a me  interessa soprattutto avere il file con le differenze.
Unire questo a NBU è quasi banale: lo si aggiunge in fondo e si fa un sort
su colonna 8.

Andrea

[utenti-it] Risposta: Fwd: [utenti-it] R: [utenti-it] Estrarre dati da due fogli elettronici

Posted by Roberto Crosio <RC...@buzziunicem.it>.
>>> Il Lunedì 5 Agosto 2013 alle 17.49, Claudio Monaco
<cf...@gmail.com> ha
scritto:
> Consiglio a tutti di saper usare i database. Io li uso (per lavoro)
dal 
> 1983 (glorioso DBase) e mi trovo bene.
> Da tempo uso ACCESS 2000 che trovo ottimo (a proposito asiste un
emulo 
> free altrettatto semplice ed efficace?).
> Avrei importato i due Database in una sola tabella accodandoli e poi

> attivato la query (di libreria) "trova duplicati"
> Saluti
> Claudio

Ciao a tutti,

Concordo pienamente con Claudio; come informatico sò cosa vuol dire
scrivere codice senza possibilità di gestire il tutto con controlli, ad
esempio una banale finestra di conferma si/no.
Le funzioni di Calc sono strautili, ma quando si vuole capire bene cosa
si stia facendo in una struttura un po' più complessa di un
cerca.verticale, beh.... l'unica è un database con tanto di codice sql.
Eh...... bei tempi quelli di GW-Basic, Clipper, DBIII e programmazione
strutturata.
:-)

Ciao
Roberto


-- 
Cordiali Saluti
Roberto Crosio - E-Mail rcrosio@buzziunicem.it
Buzzi Unicem S.p.A. - Ufficio Padroncini CLS - Casale Monferrato
15033 AL - Tel. +39.0142.416378 Fax +39.0142.416314


---------------------------------------------------------------------
Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
Per informazioni: http://www.openoffice.org/it/
Per avviare una nuova discussione: utenti-it@openoffice.apache.org
Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it


Fwd: [utenti-it] R: [utenti-it] Estrarre dati da due fogli elettronici

Posted by Claudio Monaco <cf...@gmail.com>.
Consiglio a tutti di saper usare i database. Io li uso (per lavoro) dal 
1983 (glorioso DBase) e mi trovo bene.
Da tempo uso ACCESS 2000 che trovo ottimo (a proposito asiste un emulo 
free altrettatto semplice ed efficace?).
Avrei importato i due Database in una sola tabella accodandoli e poi 
attivato la query (di libreria) "trova duplicati"
Saluti
Claudio

-------- Messaggio originale --------
Oggetto: 	[utenti-it] R: [utenti-it] Estrarre dati da due fogli elettronici
Data: 	Wed, 31 Jul 2013 16:59:22 +0200
Mittente: 	Roberto Crosio <RC...@buzziunicem.it>
Rispondi-a: 	utenti-it@openoffice.apache.org
A: 	<ut...@openoffice.apache.org>



>>>  Il Mercoledì 31 Luglio 2013 alle 16.40, Francesca Chiarelli
<fr...@tiscali.it>  ha scritto:
>  Esagerati, io me sa sarei cavata con CERCA.VERT fra i due elenchi o
la
>  SE nell'elenco unito (dopo aver ordinato). O anche con un filtro
>  avanzato che elimina i doppioni. BASE mi è ostico.

[...]

Beh Francesca.....
Personalmente preferisco l'uso di un database; non che le funzioni di
Calc siano poco affidabili, soltalto che per scrivere con dei controlli
degni di tale nome, spesso la stringa è così lunga che si rischia di
perdersi fra funzioni "alla matrioska", con tanto di parentesi aperte e
chiuse.
Il codice in Base è SQL invece, ma si può usare la grafica per le
relazioni tra tabelle.

Ogni modulo di AOO ha le proprie pecularità, e li uso tutti a seconda
dei casi.
:-)

Ciao
Roberto


---------------------------------------------------------------------
Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
Per informazioni: http://www.openoffice.org/it/
Per avviare una nuova discussione: utenti-it@openoffice.apache.org
Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it



Re: [utenti-it] R: [utenti-it] Estrarre dati da due fogli elettronici

Posted by Andrea Celli <a....@gmail.com>.
Ho provato con il metodo di Oscar, copiando la funzione di ricerca in tutte
le righe della nuova colonna.
Per prima cosa ho dovuto aggiungere un po' di $, per rendere alcuni
riferimenti assoluti
=SE(VAL.NON.DISP(CERCA.VERT(H1;NBU.H$1:H$20000;1))=1;"NUOVO";"")

Stranamente, mi funziona solo con il primo libro :-0

Alla fine, vista la mia scarsa dimestichezza con i fogli elettronici e il
fatto che il mio catorcio fatica a maneggiare un documento con due fogli da
16000 righe, ho adottato una soluzione spiccia.
Ho salvato le due colonne dei numeri di carico in due file di testo:.
VECCHIO e NUOVO e ho dato il comandillo Linux
$ for i in `cat VECCHIO`; do grep -qx  $i NUOVO || echo $i; done > ritrovati

Grazie comunque a tutti perché così ho incominciato a imparare qualcosa di
Calc.

Andrea


Il giorno 31 luglio 2013 16:59, Roberto Crosio <RC...@buzziunicem.it> ha
scritto:

> >>> Il Mercoledì 31 Luglio 2013 alle 16.40, Francesca Chiarelli
> <fr...@tiscali.it> ha scritto:
> > Esagerati, io me sa sarei cavata con CERCA.VERT fra i due elenchi o
> la
> > SE nell'elenco unito (dopo aver ordinato). O anche con un filtro
> > avanzato che elimina i doppioni. BASE mi è ostico.
>
> [...]
>
> Beh Francesca.....
> Personalmente preferisco l'uso di un database; non che le funzioni di
> Calc siano poco affidabili, soltalto che per scrivere con dei controlli
> degni di tale nome, spesso la stringa è così lunga che si rischia di
> perdersi fra funzioni "alla matrioska", con tanto di parentesi aperte e
> chiuse.
> Il codice in Base è SQL invece, ma si può usare la grafica per le
> relazioni tra tabelle.
>
> Ogni modulo di AOO ha le proprie pecularità, e li uso tutti a seconda
> dei casi.
> :-)
>
> Ciao
> Roberto
>
>
> ---------------------------------------------------------------------
> Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
> Per informazioni: http://www.openoffice.org/it/
> Per avviare una nuova discussione: utenti-it@openoffice.apache.org
> Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it
>
>

[utenti-it] R: [utenti-it] Estrarre dati da due fogli elettronici

Posted by Roberto Crosio <RC...@buzziunicem.it>.
>>> Il Mercoledì 31 Luglio 2013 alle 16.40, Francesca Chiarelli
<fr...@tiscali.it> ha scritto:
> Esagerati, io me sa sarei cavata con CERCA.VERT fra i due elenchi o
la 
> SE nell'elenco unito (dopo aver ordinato). O anche con un filtro 
> avanzato che elimina i doppioni. BASE mi è ostico.

[...]

Beh Francesca.....
Personalmente preferisco l'uso di un database; non che le funzioni di
Calc siano poco affidabili, soltalto che per scrivere con dei controlli
degni di tale nome, spesso la stringa è così lunga che si rischia di
perdersi fra funzioni "alla matrioska", con tanto di parentesi aperte e
chiuse.
Il codice in Base è SQL invece, ma si può usare la grafica per le
relazioni tra tabelle.

Ogni modulo di AOO ha le proprie pecularità, e li uso tutti a seconda
dei casi.
:-)

Ciao
Roberto


---------------------------------------------------------------------
Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
Per informazioni: http://www.openoffice.org/it/
Per avviare una nuova discussione: utenti-it@openoffice.apache.org
Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it


Re: [utenti-it] R: [utenti-it] Estrarre dati da due fogli elettronici

Posted by Francesca Chiarelli <fr...@tiscali.it>.
Esagerati, io me sa sarei cavata con CERCA.VERT fra i due elenchi o la 
SE nell'elenco unito (dopo aver ordinato). O anche con un filtro 
avanzato che elimina i doppioni. BASE mi è ostico.

Francesca Chiarelli
-------------------

Il 31/07/2013 11.15, Roberto Crosio ha scritto:
>>>> Il Mercoledì 31 Luglio 2013 alle 10.23, Andrea Celli
> <a....@gmail.com>
> ha scritto:
>> Salve, ho un problema da risolvere e non so bene da che parte
> cominciare.
>> Devo ricostruire il catalogo di una biblioteca che, per motivi lunghi
> da
>> spiegare, ha perso pezzi strada facendo. Alla fine, sono riuscito a
> mettere
>> in due fogli elettronici due backup:
>
> [...]
>
>> Quello che dovrei fare è
>> - scorrere il  vecchio back-up
>> - per ogni numero di carico, controllare se è presente in NBU
>> - se non è in NBU, copiare la riga su un nuovo foglio
>
> [...]
>
>> Comunque, a me  interessa soprattutto avere il file con le
> differenze.
>> Unire questo a NBU è quasi banale: lo si aggiunge in fondo e si fa un
> sort
>> su colonna 8.
>>
>> Andrea
>
> Ciao Andrea,
>
> Anche io ho avuto un problema uguale, anche se relativo a situazioni
> totalmente diverse.
> Due fiiles da confrontare per ottenere le corrispondenze e le
> non-corrispondenze.
>
> Ho risolto con Base, importando i due files nel seguente modo:
> 1 - aprire Base
> 2 - aprire il primo foglio elettronico, selezionarlo tutto, copiare ed
> incollare in Base, ottenendo una prima tabella
> 3 - aprire il secondo foglio elettronico, selezionarlo tutto, copiare
> ed incollare in Base, ottenendo una seconda tabella
> 4 - ordinare i dati nelle 2 tabelle
> 5 - tramite query o ricerca collegare le due tabelle tramite il campo
> chiave uguale per entrambe (ovvero il numero di carico)
>
> NB: la query può essere impostata per ottenere solo i dati presenti in
> entrambe le tabelle, oppure per evidenziare solo i dati presenti in una,
> ma mancanti nell'altra.
>
> Se hai problemi puoi scrivermi in privato
>
> Ciao Roberto
>
>
>
> ---------------------------------------------------------------------
> Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
> Per informazioni: http://www.openoffice.org/it/
> Per avviare una nuova discussione: utenti-it@openoffice.apache.org
> Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it
>
>

---------------------------------------------------------------------
Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
Per informazioni: http://www.openoffice.org/it/
Per avviare una nuova discussione: utenti-it@openoffice.apache.org
Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it


[utenti-it] R: [utenti-it] Estrarre dati da due fogli elettronici

Posted by Roberto Crosio <RC...@buzziunicem.it>.
>>> Il Mercoledì 31 Luglio 2013 alle 10.23, Andrea Celli
<a....@gmail.com>
ha scritto:
> Salve, ho un problema da risolvere e non so bene da che parte
cominciare.
> Devo ricostruire il catalogo di una biblioteca che, per motivi lunghi
da
> spiegare, ha perso pezzi strada facendo. Alla fine, sono riuscito a
mettere
> in due fogli elettronici due backup:

[...]

> Quello che dovrei fare è
> - scorrere il  vecchio back-up
> - per ogni numero di carico, controllare se è presente in NBU
> - se non è in NBU, copiare la riga su un nuovo foglio

[...]

> Comunque, a me  interessa soprattutto avere il file con le
differenze.
> Unire questo a NBU è quasi banale: lo si aggiunge in fondo e si fa un
sort
> su colonna 8.
> 
> Andrea

Ciao Andrea,

Anche io ho avuto un problema uguale, anche se relativo a situazioni
totalmente diverse.
Due fiiles da confrontare per ottenere le corrispondenze e le
non-corrispondenze.

Ho risolto con Base, importando i due files nel seguente modo:
1 - aprire Base
2 - aprire il primo foglio elettronico, selezionarlo tutto, copiare ed
incollare in Base, ottenendo una prima tabella
3 - aprire il secondo foglio elettronico, selezionarlo tutto, copiare
ed incollare in Base, ottenendo una seconda tabella
4 - ordinare i dati nelle 2 tabelle
5 - tramite query o ricerca collegare le due tabelle tramite il campo
chiave uguale per entrambe (ovvero il numero di carico)

NB: la query può essere impostata per ottenere solo i dati presenti in
entrambe le tabelle, oppure per evidenziare solo i dati presenti in una,
ma mancanti nell'altra.

Se hai problemi puoi scrivermi in privato

Ciao Roberto
 


---------------------------------------------------------------------
Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
Per informazioni: http://www.openoffice.org/it/
Per avviare una nuova discussione: utenti-it@openoffice.apache.org
Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it


Re: [utenti-it] Estrarre dati da due fogli elettronici

Posted by Francesca Chiarelli <fr...@tiscali.it>.
... sì, appunto. come Oscar intendevo, solo che l'ho letto dopo.
:-)

Francesca Chiarelli
-------------------

Il 31/07/2013 11.04, Oscar ha scritto:
> Ciao,
>
> la soluzione che ho io è un po' "manuale", ma funziona. Allora, se il
> "numero di carico" è un numero univoco, da come ho capito, potresti fare
> in questo modo:
>
> Foglio NBU
> Foglio OLD
>
> Crei la seguente formula in una nuova colonna
>
> =SE(VAL.NON.DISP(CERCA.VERT(H1;NBU.H1:H20000;1))=1;"NUOVO";"")
>
> spiegazione:
> nella colonna H (la 8) si trova il "numero di carico"
>
> CERCA.VERT(H1;NBU.H1:H20000;1) con questo vai a vedere se esiste nella
> colonna 8 di NBU lo stesso valore presente nella colonna 8 di OLD, se
> non esiste di butta fuori NON.DISP.
>
> I NON.DISP sono quelli nuovi e li intercetti con VAL.NON.DISP()
>
> il resto si spiega da sè, al termine li metti in ordine di "NUOVO" e li
> copi dove vuoi. Più facile da fare che da spiegare :)
>
> ciao Oscar
>
>
>
> Il 31/07/2013 10:23, Andrea Celli ha scritto:
>> Salve, ho un problema da risolvere e non so bene da che parte cominciare.
>> Devo ricostruire il catalogo di una biblioteca che, per motivi lunghi da
>> spiegare, ha perso pezzi strada facendo. Alla fine, sono riuscito a
>> mettere
>> in due fogli elettronici due backup:
>> - uno molto vecchio, abbastanza completo sui libri più vecchi ma
>> carente su
>> quelli più recenti e sui prestiti
>> - l'ultimo ,che chiamo NBU, è più aggiornato su prestiti e ultime
>> acquisizioni ma ha molti buchi "storici"
>> Sono fogli con circa 16000 righe. Quindi difficile da gestire a manina.
>> Il dato più semplice per individuare un libro è il "numero di carico":
>> veniva dato sequenzialmente da 1 a 17000 circa e si trova in colonna 8.
>>
>> Quello che dovrei fare è
>> - scorrere il  vecchio back-up
>> - per ogni numero di carico, controllare se è presente in NBU
>> - se non è in NBU, copiare la riga su un nuovo foglio
>>
>> Ho provato a cercare in rete, ma i suggerimenti che ho trovato sembrano
>> tutti relativi ad una funzione merge che richiede di verificare una
>> per una
>> le righe da utilizzare. Forse ho letto male!
>>
>> Comunque, a me  interessa soprattutto avere il file con le differenze.
>> Unire questo a NBU è quasi banale: lo si aggiunge in fondo e si fa un
>> sort
>> su colonna 8.
>>
>> Andrea
>>
>
>
>
> ---------------------------------------------------------------------
> Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
> Per informazioni: http://www.openoffice.org/it/
> Per avviare una nuova discussione: utenti-it@openoffice.apache.org
> Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it
>
>

---------------------------------------------------------------------
Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
Per informazioni: http://www.openoffice.org/it/
Per avviare una nuova discussione: utenti-it@openoffice.apache.org
Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it


Re: [utenti-it] Estrarre dati da due fogli elettronici

Posted by Oscar <os...@keysbabo.com>.
Ciao,

la soluzione che ho io è un po' "manuale", ma funziona. Allora, se il 
"numero di carico" è un numero univoco, da come ho capito, potresti fare 
in questo modo:

Foglio NBU
Foglio OLD

Crei la seguente formula in una nuova colonna

=SE(VAL.NON.DISP(CERCA.VERT(H1;NBU.H1:H20000;1))=1;"NUOVO";"")

spiegazione:
nella colonna H (la 8) si trova il "numero di carico"

CERCA.VERT(H1;NBU.H1:H20000;1) con questo vai a vedere se esiste nella 
colonna 8 di NBU lo stesso valore presente nella colonna 8 di OLD, se 
non esiste di butta fuori NON.DISP.

I NON.DISP sono quelli nuovi e li intercetti con VAL.NON.DISP()

il resto si spiega da sè, al termine li metti in ordine di "NUOVO" e li 
copi dove vuoi. Più facile da fare che da spiegare :)

ciao Oscar



Il 31/07/2013 10:23, Andrea Celli ha scritto:
> Salve, ho un problema da risolvere e non so bene da che parte cominciare.
> Devo ricostruire il catalogo di una biblioteca che, per motivi lunghi da
> spiegare, ha perso pezzi strada facendo. Alla fine, sono riuscito a mettere
> in due fogli elettronici due backup:
> - uno molto vecchio, abbastanza completo sui libri più vecchi ma carente su
> quelli più recenti e sui prestiti
> - l'ultimo ,che chiamo NBU, è più aggiornato su prestiti e ultime
> acquisizioni ma ha molti buchi "storici"
> Sono fogli con circa 16000 righe. Quindi difficile da gestire a manina.
> Il dato più semplice per individuare un libro è il "numero di carico":
> veniva dato sequenzialmente da 1 a 17000 circa e si trova in colonna 8.
>
> Quello che dovrei fare è
> - scorrere il  vecchio back-up
> - per ogni numero di carico, controllare se è presente in NBU
> - se non è in NBU, copiare la riga su un nuovo foglio
>
> Ho provato a cercare in rete, ma i suggerimenti che ho trovato sembrano
> tutti relativi ad una funzione merge che richiede di verificare una per una
> le righe da utilizzare. Forse ho letto male!
>
> Comunque, a me  interessa soprattutto avere il file con le differenze.
> Unire questo a NBU è quasi banale: lo si aggiunge in fondo e si fa un sort
> su colonna 8.
>
> Andrea
>



---------------------------------------------------------------------
Per cancellarsi: utenti-it-unsubscribe@openoffice.apache.org
Per informazioni: http://www.openoffice.org/it/
Per avviare una nuova discussione: utenti-it@openoffice.apache.org
Archivi: http://mail-archives.apache.org/mod_mbox/openoffice-utenti-it