Condividi:        

ricerca dati database excel

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

ricerca dati database excel

Postdi andrea tony » 01/12/12 08:34

buongiorno a tutti

Avrei bisogno del vostro preziosissimo aiuto.
Ho un database excel che riassume tutti i preventivi creati da un Autocarrozzeria.
Il database, in Excel2010, è composto dai seguenti campi:
colonna A: IDcliente (Univoco)
colonna B: Cognome
colonna C: Data Preventivo
colonna D: Modello veicolo
colonna E: Targa veicolo
colonna F: Totale preventivo

Dovendo fare una ricerca di un preventivo in questo database senza conoscere l'unico dato univoco che è l'ID cliente, quindi con la probabilita' di avere per esempio più preventivi associati alla stessa targa o più clienti con lo stesso nome, che soluzione si potrebbe usare?
Vorrei evitare i filtri automatici in quanto un po laboriosi da far utilizzare a chi non usa spesso excel, l'ideale sarebbe avere una maschera con dei campi da riempire e un pulsante che avvia la ricerca del o dei preventivi ricercati.

Secondo voi è fattibile?

Mi potete aiutare a trovare una soluzione?

Grazie a tutti in anticipo

Andrea

WIN7+OFFICE2010
andrea tony
Utente Junior
 
Post: 26
Iscritto il: 26/07/12 09:44

Sponsor
 

Re: ricerca dati database excel

Postdi peppo55 » 01/12/12 09:55

Ciao andrea tony

a mio parere dovresti usare una tabella pivot.
Per quanto riguarda la maschera che fa ricerca su più campi di una tabella, puoi usare il Modulo dati.
peppo

Excel 2010
peppo55
Utente Senior
 
Post: 167
Iscritto il: 30/09/12 13:51

Re: ricerca dati database excel

Postdi Flash30005 » 01/12/12 10:01

Ma vorresti "qualcosa" che determini la ricerca su qualsiasi altro campo, oppure solo su alcuni campi?

Es.: Cognome, Modello Veicolo e targa veicolo?

In questo secondo caso il tuo elenco preventivi sarebbe la banca dati
e su un altro foglio si potrebbe creare un elenco univoco (voci non ripetute sopra menzionate) della banca dati.
Una cella di convalida dati delle 3 voci e una volta selezionata es. una targa
si potrebbe avere su altro foglio solo l'elenco dei preventivi di quella targa, oppure Cognome o modello veicolo.

cosa ne pensi?

ciao

EDIT: leggi quanto postato da Peppo55
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: ricerca dati database excel

Postdi andrea tony » 01/12/12 12:08

Ciao

Grazie a tutti per l'interessamento

....come avete capito non sono un "falco" dell'informatica :-))

la mia esigenza è quella di far ricercare all'interno del database "preventivi" un preventivo qualsiasi ed estrapolarne tutti i dati;nome,data,importo,vettura..etc..

Se fossi sicuro di conoscere SEMPRE l'ID cliente avrei usato un cerca.vert usando come VALORE un riferimento a una cella dove inserire appunto l'ID del preventivo da cercare....giusto?

C'è però la possibilità non troppo remota che non si conosca l'ID e quindi la ricerca deve essere fatta usando un'altro criterio.

se però facendo una ricerca usando la targa ci sono due preventivi non posso usare il cerca.vert perchè mi restituirebbe solo un preventivo, quello che troverebbe per primo, giusto?

Da quì l'esigenza di trovare un sistema che mi possa restituire tutti i preventivi associati a quel numero di targa, quindi selezionarne uno di questi e utilizzarne i dati ad esempio per stampare un report o altro ancora.

Ho provato a dare un 'occhiata al modulo dati, come suggerito da Peppo55 ma purtroppo essendo un neofita non ho capito molto bene come si utilizzano.

Se sono riuscito a spiegarmi e la cosa è fattibile, potreste farmi un esempio semplice semplice in modo che io possa metterlo in pratica per capirne bene il funzionamento?

Grazie ancora ragazzi...
Andrea
Win7+Excel 2010
andrea tony
Utente Junior
 
Post: 26
Iscritto il: 26/07/12 09:44

Re: ricerca dati database excel

Postdi ricky53 » 01/12/12 13:07

Ciao,
come già indicato anch'io ti consiglio di utilizzare le tabelle PIVOT.
Non ti fare spaventare dal nome: sono facilissime da utilizzare e molto versatili.

Devo solo provare e ... siamo QUI ... devi metterci impegno e volontà e ne usciremo.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: ricerca dati database excel

Postdi Flash30005 » 01/12/12 14:36

Veramente ti ho chiesto quele/li campi tra i 6 menzionati
colonna A: IDcliente (Univoco)
colonna B: Cognome
colonna C: Data Preventivo
colonna D: Modello veicolo
colonna E: Targa veicolo
colonna F: Totale preventivo
sei interessato a fare la ricerca (escludendo l'ID)

Ma hai scritto un post lunghissimo senza dare una risposta

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: ricerca dati database excel

Postdi andrea tony » 01/12/12 15:11

hai ragione

pensavo di darti qualche indicazione in più invece ho peggiorato la mia situazione

Comunque penso che il campo targa sia quello più logico, quindi utilizzerei quello

grazie

Andrea

win7/excel 2010
andrea tony
Utente Junior
 
Post: 26
Iscritto il: 26/07/12 09:44

Re: ricerca dati database excel

Postdi ricky53 » 01/12/12 15:30

Ciao
e una prova sulle tabelle PIVOT?
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: ricerca dati database excel

Postdi andrea tony » 01/12/12 15:44

Ciao Richy53

ho letto il tuo precedente messaggio...e de da circa due ore che sto lavorando sulle tabelle pivot senza riuscire a risolvere il mio problema.
Ho guardato anche diversi video tutorial per capirle meglio...ma non riesco a comprendrene bene l'utilità....almeno per il mio caso...

il problema è che mi sembrano troppo complesse da analizzare e comunque non si aggiornano in automatico

tieni presente che sto creando un foglio di calcolo che non userò io ma bensì delle terze persone che potrebbero non conoscere affatto excel.

Se riesci ad aiutarmi di più benvenga qualsiasi consiglio, forse sono io che non ne vedo l'utilità.

andrea

win7/excel 2010
andrea tony
Utente Junior
 
Post: 26
Iscritto il: 26/07/12 09:44

Re: ricerca dati database excel

Postdi ricky53 » 01/12/12 16:04

Ciao,
le tabelle pivot si possono aggiornare automaticamente.
Una volta disegnata la pivot può essere utilizzata da chiunque, in visualizzazione, senza difficoltà.
Dalla pivot si posso prendere dei dati e costruire un qualunque schema di visualizzazione ... insomma si può fare di tutto.

Le pivot hanno, tra i tanti scopi, quello di aggregare/sommare/... i dati per le colonne, della tabella dati di partenza, che si vuole.

Puoi inviare un tuo file di esempio e ti costruisco una pivot per farti vedere le potenzialità.
Attenzione ai dati riservati.



Non sei il primo utente che ha ... diciamo ... timore reverenziale verso le pivot ... poi, una volta presa confidenza, le apprezzano e non le abbandonano.
Ultima modifica di ricky53 su 01/12/12 16:06, modificato 1 volte in totale.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: ricerca dati database excel

Postdi scossa » 01/12/12 16:06

andrea tony ha scritto:Ciao Richy53

ho letto il tuo precedente messaggio...e de da circa due ore che sto lavorando sulle tabelle pivot senza riuscire a risolvere il mio problema.
Ho guardato anche diversi video tutorial per capirle meglio...ma non riesco a comprendrene bene l'utilità....almeno per il mio caso...

il problema è che mi sembrano troppo complesse da analizzare e comunque non si aggiornano in automatico

tieni presente che sto creando un foglio di calcolo che non userò io ma bensì delle terze persone che potrebbero non conoscere affatto excel.

Se riesci ad aiutarmi di più benvenga qualsiasi consiglio, forse sono io che non ne vedo l'utilità.

andrea

win7/excel 2010


Secondo me, se avessi postato il tuo file a quest'ora avresti avuto già qualche soluzione. Non puoi pretendere (parlo per me) che uno si costurisca/inventi il file quando tu ce l'hai già bello e pronto, ripeto: opinione personale.
Bye!
scossa

Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)
Avatar utente
scossa
Utente Senior
 
Post: 427
Iscritto il: 01/04/12 16:40
Località: Provincia di Verona

Re: ricerca dati database excel

Postdi peppo55 » 01/12/12 16:07

Ciao andrea tony

allego un piccolo esempio

contiene una tabella pivot e dei filtri di facile utilizzo che ti permettono di fare ricerca in base al nome del cliente, la targa, la data o il modello veicolo.
Vedi se una cosa del genere può andare bene.

http://depositfiles.com/files/z56zpdusz
peppo

Excel 2010
peppo55
Utente Senior
 
Post: 167
Iscritto il: 30/09/12 13:51

Re: ricerca dati database excel

Postdi ricky53 » 01/12/12 16:33

Ciao Andrea,

con l'esempio di Peppo non puoi non apprezzare le pivot !!!

Ti ha prodotto un file molto utile e facile da utilizzare ... provalo e ...

Certo predisporlo da solo sarebbe stato un po' difficile se non hai un po' di dimestichezza ma avendo un buon esempio potrai sfiziarti.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: ricerca dati database excel

Postdi andrea tony » 01/12/12 17:21

Ciao Peppo

grazie mille per il lavoro che mi hai fatto...e grazie a tutti per i consigli che mi state dando

Stavo guardando l'esempio...

non dico che le tabelle pivot non siano funzionali ...le mie sicuramente non lo erano :-))))))

però...come ho detto prima ho paura che chi dovrà utilizzare questo foglio si troverà un po impacciato se non ha mai utilizzato excel.

se invece avessi un semplice campo dove inserire il numero di targa e un pulsante da cliccare che fa partire la ricerca penso che sarebbe molto più semplice da utilizzare.

ora non so se è così facile da realizzare...è per questo che mi sono affidato a voi...

spero di essere riuscito a farvi capire i miei dubbi

grazie ancora a tutti

andrea
andrea tony
Utente Junior
 
Post: 26
Iscritto il: 26/07/12 09:44

Re: ricerca dati database excel

Postdi ricky53 » 01/12/12 17:31

Ciao,
premesso che gli utilizzatori vanno "guidati" e formati facendo capire loro la potenzialità e facilità di certe soluzioni.

Il tuo schema è fattibile ma comporta un po' più di impegno:
1. predisporre una "Convalida Dati" in una cella che propone l'elenco delle targhe presenti
2. poi con qualche operazione (probabilmente occorrerà del codice VBA) fornire i dati che occorrono ma non è proprio così immediato come con la pivot.

Volendo si può pensare ad una Userform con delle combobx e text box ecc

Tu come te la cavi con il VBA?
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: ricerca dati database excel

Postdi andrea tony » 01/12/12 17:52

Ciao
pienamente daccordo sul tuo ragionamento

forse non avendole capite bene neppure io...mi spaventa un po l'idea di farle usare e da quì la mia perplessità.

Detto questo non posso nemmeno dire di essere un esperto di VBA , scopiazzo in giro qualche riga di codice che miserve a fare operazioni semplici semplici.

Se però la tua idea di usare una form può semplificare il lavoro si potrebbe provare
andrea tony
Utente Junior
 
Post: 26
Iscritto il: 26/07/12 09:44

Re: ricerca dati database excel

Postdi ricky53 » 01/12/12 18:07

Ciao,
per metterla in atto occorre del codice VBA scritto appositamente ma ...

1. occorre conoscere bene la struttura dati
2. avere chiaro cosa deve essere cercato
3. quali dati proporre

Il tutto non è complesso ma non ho la disponibilità temporale a predisporti un piccolo applicativo pronto per l'utilizzo, posso sicuramente darti degli spunti e correggere gli eventuali errori, aggiungere qualcosa ma devi essere tu a proporre una base da cui partire.

Invia un file di esempio e proviamo ma ... tu devi metterci del tuo.


Infine, aggiungo che la finalità dei forum non è quella di fornire "pacchetti" pronti per l'utilizzo ma è quella di essere di aiuto nell'arrivare insieme al risultato con la collaborazione di tutti, utente che ha proposto il quesito per primo.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: ricerca dati database excel

Postdi Flash30005 » 02/12/12 00:30

:roll:
Allora, considero due fogli
1) nome "Preventivi"
2) nome "Query"
in un modulo inserisci queste macro
Codice: Seleziona tutto
Sub CreaElUniv()
Set Ws1 = Worksheets("Preventivi")
Set Ws2 = Worksheets("Query")
Ws1.Range("O1:Q65536").ClearContents
UR1 = Ws1.Range("A" & Rows.Count).End(xlUp).Row + 1
For RR1 = 1 To UR1
Cognome = Ws1.Range("B" & RR1).Value
Modello = Ws1.Range("D" & RR1).Value
Targa = Ws1.Range("E" & RR1).Value
UR1Q = Ws1.Range("Q" & Rows.Count).End(xlUp).Row
If Ws1.Range("Q" & UR1Q).Value <> "" Then UR1Q = UR1Q + 1
For RR1Q = 1 To UR1Q
If Ws1.Range("Q" & RR1Q).Value = Targa Then GoTo SaltaRR1
Next RR1Q
Ws1.Range("O" & UR1Q).Value = Cognome
Ws1.Range("P" & UR1Q).Value = Modello
Ws1.Range("Q" & UR1Q).Value = Targa
SaltaRR1:
Next RR1
End Sub
Private Sub UserForm_Terminate()
UserForm1.Hide
End Sub
Sub FormScript()
UR1Q = Worksheets("Preventivi").Range("Q" & Rows.Count).End(xlUp).Row
Application.EnableEvents = False
UserForm1.ComboBox1.RowSource = "Preventivi!O1:O" & UR1Q
UserForm1.ComboBox1.Value = "Cognome"
UserForm1.ComboBox2.RowSource = "Preventivi!P1:P" & UR1Q
UserForm1.ComboBox2.Value = "Modello"
UserForm1.ComboBox3.RowSource = "Preventivi!Q1:Q" & UR1Q
UserForm1.ComboBox3.Value = "Targa"
Application.Wait (Now + TimeValue("0:00:01"))
Application.EnableEvents = True
UserForm1.Show
End Sub


Nel Vba del foglio "Query" inserisci questo codice
Codice: Seleziona tutto
Private Sub Worksheet_Activate()
Worksheets("Query").Columns("A:F").ClearContents
CreaElUniv
FormScript
End Sub


Ora crei una Userform (si chiamerà UserForm1)
All'interno crei tre Caselle combinate (ComboBox1, ComboBox2, ComboBox3)
Con tasto destro sulla prima in visualizza codice incolli questa macro

Codice: Seleziona tutto
Private Sub ComboBox1_Change()
Set Ws1 = Worksheets("Preventivi")
Set Ws2 = Worksheets("Query")
If UserForm1.Visible Then
Ws1.Range("A1:F1").Copy Destination:=Ws2.Range("A1")
UREA = Ws1.Range("A" & Rows.Count).End(xlUp).Row
Cognome = Me.ComboBox1
For RRA = 2 To UREA
    If Cognome = Ws1.Range("B" & RRA).Value Then
        Ws1.Range("A" & RRA & ":F" & RRA).Copy Destination:=Ws2.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
        UserForm1.Hide
    End If
Next RRA
End If
End Sub

Nella seconda questo codice
Codice: Seleziona tutto
Private Sub ComboBox2_Change()
Set Ws1 = Worksheets("Preventivi")
Set Ws2 = Worksheets("Query")
If UserForm1.Visible Then
Ws1.Range("A1:F1").Copy Destination:=Ws2.Range("A1")
UREA = Ws1.Range("A" & Rows.Count).End(xlUp).Row
Modello = Me.ComboBox2
For RRA = 2 To UREA
    If Modello = Ws1.Range("D" & RRA).Value Then
        Ws1.Range("A" & RRA & ":F" & RRA).Copy Destination:=Ws2.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
        UserForm1.Hide
    End If
Next RRA
End If
End Sub

e nella terza questo
Codice: Seleziona tutto
Private Sub ComboBox3_Change()
Set Ws1 = Worksheets("Preventivi")
Set Ws2 = Worksheets("Query")
If UserForm1.Visible Then
Ws1.Range("A1:F1").Copy Destination:=Ws2.Range("A1")
UREA = Ws1.Range("A" & Rows.Count).End(xlUp).Row
Targa = Me.ComboBox3
For RRA = 2 To UREA
    If Targa = Ws1.Range("E" & RRA).Value Then
        Ws1.Range("A" & RRA & ":F" & RRA).Copy Destination:=Ws2.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
        UserForm1.Hide
    End If
Next RRA
End If
End Sub


Ora se i campi rispettano ciò che hai detto nel primo post
e hai dei dati nelle colonne A:F
al momento che passerai nel foglio Query
si aprirà una userform che ti permetterà di scegliere un Cognome, un modello o una traga
non appena scelta il foglio query si popolerà di dati relativi a ciò che hai inserito nel combobox

Allego il file esempio completo

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: ricerca dati database excel

Postdi andrea tony » 02/12/12 08:42

Ciao Flash30005

Stavo cercando di mettere giù un esempio da pubblicare come consigliato da Ricky53 ma mi hai preceduto.

Visto il lavorone che hai fatto cercherò di adattarlo al mio esempio in modo da capire meglio cosa hai fatto.

Vi ringrazio veramente tanto dell'aiuto che date sempre

Buona Domenica

Andreatony

win7/excel2010
andrea tony
Utente Junior
 
Post: 26
Iscritto il: 26/07/12 09:44

Re: ricerca dati database excel

Postdi andrea tony » 02/12/12 09:53

Buongiorno a tutti

Guardando bene il file che Flash30005 mi ha mandato ho notato che rimane un problema.

la scelta (cliente/targa/modello) nella form viene fatta tramite una combobox

Se noi abbiamo un elenco preventivi molto lungo diventa un po difficile la ricerca.

non sarebbe meglio usare una text box dove inserisco manualmente il dato?

Dovrei essere riuscito ad allegare il mio file di partenza cosi potete capire meglio tutti la mia esigenza

ancora grazie a tutti

andreatony
win7/excel2010
https://rapidshare.com/files/4272689997 ... %208.3.xls
andrea tony
Utente Junior
 
Post: 26
Iscritto il: 26/07/12 09:44

Prossimo

Torna a Applicazioni Office Windows


Topic correlati a "ricerca dati database excel":


Chi c’è in linea

Visitano il forum: Nessuno e 101 ospiti