Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ODBC e query

184 views
Skip to first unread message

Xine

unread,
May 18, 2010, 3:02:04 PM5/18/10
to
Salve,

con Excel 2007 mi sono importato
una tabella, via ODBC, da AS400.

Ora mi chiedevo se fosse possibile
eseguire prima una query senza ricorrere
a tabelle pivot o altro.

Mi spiego meglio.

Se in AS400 ho una tabella cos� composta
A 2
B 3
A 5
C 4

� fattibile avere una stringa dentro una cella
che mi dia A 7 direttamente e che si aggiorni
automaticamente quando apro il file?


eliano

unread,
May 18, 2010, 4:02:41 PM5/18/10
to
On 18 Mag, 21:02, "Xine" <x...@xine.ui> wrote:
> Salve,
>
> con Excel 2007 mi sono importato
> una tabella, via ODBC, da AS400.
>
> Ora mi chiedevo se fosse possibile
> eseguire prima una query senza ricorrere
> a tabelle pivot o altro.
>
> Mi spiego meglio.
>
> Se in AS400 ho una tabella così composta

> A 2
> B 3
> A 5
> C 4
>
> è fattibile avere una stringa dentro una cella

> che mi dia A 7 direttamente e che si aggiorni
> automaticamente quando apro il file?

Ciao Xine.
A me il tuo post sembra una esternazione di Nostradamus e non credo
per mio difetto.:-))
Forse se spieghi meglio il tuo problema, qualcuno potrebbe anche
tentare una risposta, grazie.
Eliano

xyz xyz2

unread,
May 19, 2010, 2:21:13 AM5/19/10
to
On 18 Mag, 21:02, "Xine" <x...@xine.ui> wrote:
> Salve,
>
> con Excel 2007 mi sono importato
> una tabella, via ODBC, da AS400.

AS400 è un IBM? Non capisco.

>
> Ora mi chiedevo se fosse possibile
> eseguire prima una query senza ricorrere
> a tabelle pivot o altro.

Credo di si. Guarda qui (se ho capito il tuo problema)

http://www.maurogsc.eu/excel/xlsadosenzariferimenti.aspx (grazie al
relatore!)

>
> Mi spiego meglio.
>
> Se in AS400 ho una tabella così composta


> A 2
> B 3
> A 5
> C 4
>

Cioè hai, in excel, una "tabella" tipo battaglia navale? Cosa sono
quelle indicazioni? Le intestazioni di colonne e righe della griglia
excel? Non capisco

> è fattibile avere una stringa dentro una cella


> che mi dia A 7 direttamente e che si aggiorni

Vuoi una stringa di testo *dentro* una cella (la A7? sempre dentro la
A7?). E la macro dove pesca questa stringa? quale è la sorgente?
Non capisco.

Ciao.

Xine

unread,
May 19, 2010, 6:20:00 AM5/19/10
to
"xyz xyz2" <tres...@gmail.com> ha scritto nel messaggio
news:2b67c99a-49e9-42bc...@j9g2000vbp.googlegroups.com...

On 18 Mag, 21:02, "Xine" <x...@xine.ui> wrote:

Ok, mi sono espresso come un cane evidentemente :-(

Ripartiamo

Ho un server IBM AS400.

Ho creato il collegamento ODBC
in sola lettura di determinate tabelle.

Se da Excel *importo* una determinata
tabella dall'AS400 --> tutto ok, tabella
importata correttamente con tutti i record.

Quella tabella me la "lavoro"
attraverso filtri o importandola poi in Access
per eseguire delle query o dei report.

Ora vorrei fare un passo avanti.

Esempio:

Tabella Alfa con il seguente tracciato
record

Codice Cliente Fatturato
111111111111 1000000,00
222222222222 2000000,00
333333333333 5000000,00
111111111111 6000000,00

dove ovviamente Codice Cliente e Fatturato
sono i campi
e il resto sono i record

Ora, come detto, attraverso filtri o in Access
ricavo per esempio che il codice 11111111111
ha un fatturato totale di 7000000,00

Vorrei riuscire ad ottenere direttamente
in excel che il codice 111111111
ha un fatturato totale di 7000000,00

Per cui la domanda �: si pu� fare? e come?

Quello che chiedevo poi era un ulteriore
passo in avanti.

Ovvero:
supponiamo che voglia nella cella A1 di un foglio
di excel il record 1111111111 e nella cella B1
la somma di tutti i record fatturato del codice 1111111111
ovvero appunto 7000000,00.
In pratica un modello di file che una volta aperto vada a
collegarsi alla tabella e mi restituisca dinamicamente
i risultati.

Thanks in advance

Mauro Gamberini

unread,
May 19, 2010, 9:11:57 AM5/19/10
to
> Ho un server IBM AS400.
>

OK


> Ho creato il collegamento ODBC
> in sola lettura di determinate tabelle.
>
> Se da Excel *importo* una determinata
> tabella dall'AS400 --> tutto ok, tabella
> importata correttamente con tutti i record.
>
> Quella tabella me la "lavoro"
> attraverso filtri o importandola poi in Access
> per eseguire delle query o dei report.
>

Pi� o meno OK anche qui.

> Ora vorrei fare un passo avanti.
>
> Esempio:
>
> Tabella Alfa con il seguente tracciato
> record
>
> Codice Cliente Fatturato
> 111111111111 1000000,00
> 222222222222 2000000,00
> 333333333333 5000000,00
> 111111111111 6000000,00
>

Questa tabella Alfa dove si trova?
In Access?
In un foglio del file di Excel?

> dove ovviamente Codice Cliente e Fatturato
> sono i campi
> e il resto sono i record
>
> Ora, come detto, attraverso filtri o in Access
> ricavo per esempio che il codice 11111111111
> ha un fatturato totale di 7000000,00
>
> Vorrei riuscire ad ottenere direttamente
> in excel che il codice 111111111
> ha un fatturato totale di 7000000,00
>

Quindi la tabella � in Access?
Bene, puoi interrogare Access via ODBC o tramite ADO
da Excel.
Meglio ADO(pi� duttile) ma bisogna conoscere un po' di SQL.
Ti prepari una UserForm o un foglio e ci metti il risultato
delle query SQL verso la tua tabella di Access.

--
---------------------------
Mauro Gamberini
Microsoft MVP - Excel
http://www.riolab.org/
http://www.maurogsc.eu/
http://social.answers.microsoft.com/Forums/it-IT/officeexcelit/threads


__________ Informazioni da ESET NOD32 Antivirus, versione del database delle firme digitali 5128 (20100519) __________

Il messaggio � stato controllato da ESET NOD32 Antivirus.

www.nod32.it

A.R.

unread,
May 19, 2010, 2:21:44 PM5/19/10
to
Boh!

1 Cella A1 (Cliente) Cella B1 (Fatturato) Cella C1
(Risultato)
2 Giuseppe 1234,56 =A1&"ha
fatturato � "&C1
dovresti avere, sempre aggiornato. codesto risultato:
Giuseppe ha fatturato � 1234,56
Ma forse non ho capito quel che ti serve.
Ciao. A.R.

eliano

unread,
May 19, 2010, 4:06:51 PM5/19/10
to

LOL

elby

unread,
May 19, 2010, 6:55:05 PM5/19/10
to
Se l'origine dati è interrogabile direttamente con MicrosoftQuery
incorporato in Excel puoi, dopo aver costruito una query generica di
selezione di importazione di tutti i record, modificare la stessa con
una istruzione SQL di aggregazione entrando in modifica della
istruzione SQL della query 'generica'. Alternativamente puoi aggregare
i dati dopo l'importazione in Excel con formule matriciali che
'puntano' la tabella query di importazione.
Prova a registrare una macro di importazione di tutti i record e
vediamo di modificarla per ragiungere lo scopo attraverso la prima
strada indicata.
Ciao elio
> LOL- Nascondi testo citato
>
> - Mostra testo citato -

SteAXA

unread,
May 24, 2010, 10:42:01 AM5/24/10
to
Effettivamente si capisce che vuoi estrarre qualcosa ma non è chiaro con che
criteri...
Dacci qualche elemento in più!
Ste'

Xine

unread,
May 24, 2010, 2:12:55 PM5/24/10
to
Ho risolto,

invece che usare microsoft query con i file iqy
uso i file odc.

In pratica importo la tabella da AS400
in un foglio Excel.

In questo modo viene creato un file odc.

A quel punto, con un editor di testo, apro
il file odc e inserisco le istruzioni SQL.

Apro il file odc con excel e m'importo la tabella
con il query gi� eseguito.

Grz a tutti


0 new messages