Precedente :: Successivo |
Autore |
Messaggio |
maroc Semidio

Registrato: 29/03/05 22:22 Messaggi: 213
|
Inviato: 24 Nov 2007 14:06 Oggetto: * Programma per operazioni fra insiemi e confrontare elenchi |
|
|
Buongiorno a tutti,
faccio una piccola premessa, perchè credo di presentare un problema non di facile soluzione, ma che immaginoi riguardi non poche persone nel loro lavoro quotidiano.
lavoro moltoi con Exce e praticamente ogni giorno mi capita di avere leenchi di numeri da confrontare, e di trovare gli elementi comuni, oppure quelli del primo elenco mancanti nel secondo e viceversa.
cerco una funzione Excel o un altro programma nella quale inserisco due elenchi di numeri, due insiemi, e che mi estrae la loro intersezione, oppure il complemento a uno.
esempio: lista materiali necessari e quelli a magazzino. vorrei incrociare i due elenchi e trovare i materiali necessari e consegnati a magazzino, quelli necessari e mancanti a magazzino per ordinarli, e quelli a magazzino e non necessari per una eventuale svalutazione e rottamazione.
excel present auna funzione "Confronta" che vede se un valore è presente in una'ltra lista, ma non è robusta su numeri alti di codici, dà molti errori.
l'ideale sarebbe un programma gratuito, tipo di matLab, che opera fra insiemi, importa i due elenchi da file di testo, e fa queste operazioni:
-eliminaziione degli elementi ripetuti di un insieme
-unione
-intersezione
-complemento a uno
grazie in anticipo a chi mi potrà dare una man |
|
Top |
|
 |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 24 Nov 2007 18:34 Oggetto: |
|
|
Prova a vedere se questo fa a caso tuo:
Excel List Compare
non copre tutti i punti da te richiesti ma:
Citazione: |
Useful Excel macro will compare rows in 2 lists of data based on 1 to 3 columns in each list. Creates a new spreadsheet with matched rows from original 2 lists merged together on the same row and unmatched rows highlighted on separate rows.
|
qui c'è altra roba nel Related Software, ma non ho controllato |
|
Top |
|
 |
chemicalbit Dio maturo


Registrato: 01/04/05 18:59 Messaggi: 18597 Residenza: Milano
|
Inviato: 25 Nov 2007 00:19 Oggetto: Re: programma per operazioni fra insiemi e confrontare elen |
|
|
maroc ha scritto: | ma non è robusta su numeri alti di codici | Cioè? Scusami ma non ho capito. |
|
Top |
|
 |
ioSOLOio Amministratore


Registrato: 12/09/03 19:01 Messaggi: 16342 Residenza: in un sacco di...acqua
|
Inviato: 25 Nov 2007 10:59 Oggetto: Re: programma per operazioni fra insiemi e confrontare elen |
|
|
chemicalbit ha scritto: | maroc ha scritto: | ma non è robusta su numeri alti di codici | Cioè? Scusami ma non ho capito. |
io l'ho intesa che sostiene che per elenchi molto grandi di numeri da confrontare non funziona in maniera precisa... |
|
Top |
|
 |
maroc Semidio

Registrato: 29/03/05 22:22 Messaggi: 213
|
Inviato: 25 Nov 2007 12:07 Oggetto: |
|
|
esatto..
se hai molte righe da confrontare non è il massimo della vita
provo il programma che mi hai indicato.  |
|
Top |
|
 |
maroc Semidio

Registrato: 29/03/05 22:22 Messaggi: 213
|
Inviato: 25 Nov 2007 15:34 Oggetto: |
|
|
funziona benissimo..c'è anche un bell'imprevisto: oltre a darmi l'elenco dei campi comuni, confrontare più di un campo, si porta dietro tutte le proprietà.
esempio: dopo aver trtovato i materiali non comuni a due liste, è necessario fare Modifica /trova per ogni codice, sui due elenchi originari, per salvare non solo il codice ma tutti gli altri dati associati.
qui invece basta evidenziare tutti campi che servono, sia quelli da confrontare, che quelli specifici di una tabella (mancanti nell'altra), per ritrovare i codice comuni e non con le relative altre proprietà delle'lenco iniziale.
un altro problema è eliminare gli elemtni ripetuti di un elenco. al solito, anche in Excel 2007, il Filtro avanzato , spuntando copia univoca degli elementi, funziona per modo di dire.
e ovviamente al massimop su una colonna.
se usiamo una tabella più grande, tipo 4 colonne, con righe ripetute su due, il filtro avanzato già non riesce più a togliere le ripetizioni.
anche lì l'ideale, più che un programmaa parte, sarebbe una macro già pronta da usare in Excel |
|
Top |
|
 |
Crono Semidio


Registrato: 24/03/05 15:12 Messaggi: 224 Residenza: Trieste
|
Inviato: 26 Nov 2007 11:16 Oggetto: |
|
|
Di solito per questo tipo di problemi io uso Access, eseguendo delle query su un database è più facile fare il tipo di operazioni che intendi effettuare tu |
|
Top |
|
 |
maroc Semidio

Registrato: 29/03/05 22:22 Messaggi: 213
|
Inviato: 26 Dic 2007 13:49 Oggetto: |
|
|
ho trovato un altro metodo..la macro probabilmente usa la funzione conta.se (count.if) + formattazione condizionale
stessa cosa si fa in OpenOffice
il problema è che:
-in formattazione condizionale gli dico di confrontare la prima cella con tutto il secondo intervallo e darmi un certo formato se è differente
-devo scrivere tante condizioni quante sono le righe del primo intervallo. Per ogni cella da conforntare, una condizione.
-openoffice mi fa mettere anche 100 condizioni, excel non più di 5. anche volendo, con excel non lo potrei fare
-poi tra scrivere tutte le condizioni e fare il confornto a mano non vedo molta differenza.
-l'alternativa è scrivere una macro lunga 1 km.
Ci sono pochi dubbi che bisogna usare la funzione"conta.se" per fare i confrotni; "confronta" commette errori sia in openoffice 2.3 che in excel 2007, e non è affidabiile.
gli esempi che ho postato sopra usano un'intestazione della tabella nelle formule, intestazione che non si può mettere nelle versioni di Excel 2003, etc, ma solo a partire da Excel 2007.
comunque rendono solo più illeggibile la formula. La funzione conta.se gira anche emettendo come primo argomento la colonna dove cercare, (invece del nome tabella), e come secondo il valore.
avere i valori differenti direttamente evidenziati nelle due tabelle, è comunque un di più. Con la funzone conta.se si possono comunque filtrare quelli con valore 0 che sono appunti quelli di un elenco che non compaiono nell'altro. |
|
Top |
|
 |
maroc Semidio

Registrato: 29/03/05 22:22 Messaggi: 213
|
Inviato: 26 Dic 2007 15:55 Oggetto: |
|
|
già che mi è capitato di trovarla, segnalo anche questa utitlità gratuita di sourceforge:
WinMerge
WinMerge permette di confrontare tutti ifile di office, + project, visio, di testo, il vecchio lotus notes e vari altri
penso che è da mettrere nell'elenco dei programmi stand-alone consigliati, presente nel forum |
|
Top |
|
 |
|