[Risolto] inserire un solo valore da una tabella db

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

[Risolto] inserire un solo valore da una tabella db

Messaggio da balapao »

Allora adesso vorrei riuscire a fare questo: in una cella su un foglio calc devo inserire un indirizzo relativo ad un edificio specificato nella cella che lo precede. L'elenco degli edifici e i relativi indirizzi sono contenuti in una tabella nel db principale che ho creato dove sono presenti altre tabelle con altri dati che poi sono relazionati tra di loro. E' possibile fare una cosa del genere.........se lavorassi tutto su calc userei la funzione CERCA.VERT ma vorrei evitare di ricaricare i dati degli edifici su calc e lasciarli in modo univoco su base. Spero di essere stata chiara :ucrazy:
Ultima modifica di balapao il giovedì 21 novembre 2013, 9:48, modificato 1 volta in totale.
libre office 4 su windows xp
vladko
Volontario
Volontario
Messaggi: 1637
Iscritto il: martedì 3 agosto 2010, 8:02

Re: inserire un solo valore da una tabella db

Messaggio da vladko »

AOO 3.4.1 AOO341m1(Build:9593) Linux Mint Debian/Mate 64bit java 1.6.0.22 XP PRO/32bit
con Base --> sempre backup!!!
Se problema è Risolto --> Inserire [Risolto]nel titolo come spiega qui, grazie :-)
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

appena trovo un traduttore!!!
libre office 4 su windows xp
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: inserire un solo valore da una tabella db

Messaggio da patel »

non c'è da cercare molto http://translate.google.com/#fr/it/
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

ci sto provando ma non mi resta così facile!!!
libre office 4 su windows xp
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

ci ho provato ma mi risulta troppo complicato.......qualcuno può farmi un riassunto?
libre office 4 su windows xp
vladko
Volontario
Volontario
Messaggi: 1637
Iscritto il: martedì 3 agosto 2010, 8:02

Re: inserire un solo valore da una tabella db

Messaggio da vladko »

Si, solo poco tempo per spiegare bene con il vostro italiano :-)

Aoo è un sistema integrato di applicazioni, (questo viene a dire a noi che i dati di un database io posso prendere per un foglio di calcolo o writer o altro)

Ora al link francese:

dal primo post ci sono due file a scaricare
  • 1 è il db -->VOITURES.odb
    2 è il ods con macro -->EssaiCalcSQL.ods
il db devi registrare:
Aprire Aoo, Strumenti/ Opzioni/ OpenOffice Base/ Database --> sfoglia e selezionare il database, nome viene in automatico (Per questo esempio sarà VOITURES);

Aprire EssaiCalcSQL.ods, (vediamo insieme)
l'area A1-J23 è una copia/incolla delle tabelle del database (serve solo a vedere i dati ma tu puoi trovare con Visulalizza/Sorgente dati dopo la registrazione del db)
la cella A29 è l'input per compilare le celle A,B,C31
le celle A,B,C31 contiene il richiamo per attivare la Funzione Macro
qui vediamo la sintassi

Codice: Seleziona tutto

=CALCSQL1("SourceDeDonnees";"select * from LaTable where LeChamp=" & QUOTE(A29))
Spiegazione:
CALCSQL1 -->nome della funzione
"SourceDeDonnees" -->il nome del db registrato (Per questo esempio sarà VOITURES)
; -->separazione di sintassi
"select * from LaTable where LeChamp=" & QUOTE(A29) --> query SQL
e qui vediamo la vera funzione inserita in una Matrice (viewtopic.php?f=9&t=4702&p=22350&hilit=Matrice#p22350)

Codice: Seleziona tutto

=CALCSQL1("VOITURES";"select * from VEHICULES where ""immatriculation""=" & QUOTE(A29))
qui anche un documento per i francesi:
http://www.openoffice.org/fr/Documentat ... alcSQL.sxw
ora più facile per capire??? ;-)

Altro modo per usare il cerca verticale è in un foglio(oppure file) di appoggio, caricare la tabella con i metodi già spiegati qui
viewtopic.php?f=13&t=3698&p=17171&hilit ... olo#p17171

Altri modi sicuramente c'è, se trovo qui aggiungo,
fai sapere grazie

P.s. se c'è una persona che vuole correggere meglio per italiano sono contento e grazie (una mail a me)
AOO 3.4.1 AOO341m1(Build:9593) Linux Mint Debian/Mate 64bit java 1.6.0.22 XP PRO/32bit
con Base --> sempre backup!!!
Se problema è Risolto --> Inserire [Risolto]nel titolo come spiega qui, grazie :-)
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

allora........il tuo italiano per me va benissimo!! grazie ora provo a mettere in pratica. L'ultima soluzione che dai CERCA.VERT non mi dà nessun problema ma siccome ho già dovuto importare alcune tabelle da db perchè ci devo elaborare altri dati di calcolo, volevo evitare di caricare anche questa che invece è di sola lettura!! Grazie 1000
libre office 4 su windows xp
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

ho fatto la prova ma niente da fare l'indirizzo del fabbricato non salta fuori...........premetto che anche nel file EssaiCalcSQL.ods di fatto il risultato della formula è "source de donèes inconnue"...........cmq allego un db ed il file in cui ho fatto la prova per capire dove sta il problema. Il db è stato registrato ovviamente!!!
Allegati
prova.ods
(8.64 KiB) Scaricato 106 volte
prova.odb
(18.81 KiB) Scaricato 104 volte
Ultima modifica di balapao il martedì 19 novembre 2013, 10:15, modificato 1 volta in totale.
libre office 4 su windows xp
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

....continuando a provare mi sono accorta che la formula impostata mi dice che è sconosciuta!!!
libre office 4 su windows xp
Gaetanopr
Volontario
Volontario
Messaggi: 3316
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: inserire un solo valore da una tabella db

Messaggio da Gaetanopr »

Ciao balapao, non so se ho capito bene, tu in pratica vuoi inserire il nome di un fabbricato in una cella e vuoi che ti venga restituito l'indirizzo presente nella tabella edifici del db giusto?ma in quale cella scrivi l'indirizzo è solo una oppure sono di più?
Ti riallego il tuo file dove ho inserito una macro associata all'evento modificato del foglio, ad ogni variazione della cella A2 viene lanciata una macro che tramite istruzione sql preleva l'indirizzo in riferimento al fabbricato e lo inserisce in B2, per facilità di prove ho inseito un menu a tendina con l'elenco dei fabbricati, prelevati dalla colonna E.
Inutile dire per l'ennesima volta che il db deve essere registrato
Un saluto a vladko
Allego sono foglio elettronico
Allegati
prova.ods
(10.8 KiB) Scaricato 124 volte
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

E' esattamente quello che cercavo!!!.........ora mi devi dire come faccio ad importarla nel file originale, che non ho potuto allegare, vuoi per la tipologia di dati, vuoi per la pesantezza del file!!!
libre office 4 su windows xp
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

credo di essere riuscita a copiare la macro nel mio file ed a modificare i dati oggettivi (databese di ricerca dati, e celle di riferimento ed importazione) ho notato cmq che nella macro si fa riferimento alla cella B1 cioè l'intestazione della colonna........se nel foglio in cui devo inserire st'indirizzo nn ce l'ho? si può aggiustare la macro ad ok? altrimenti devo aggiungere il riferimento!
libre office 4 su windows xp
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

mi è venuto un dubbio.......quella che mi hai mandato è una macro, quindi si attiva con un evento che nel caso del file "prova" è la scelta dell'edificio dal menù a tendina.......nel mio file originale di fatto io ho una sorta di modulo che si autocompila con una serie di dati alla scelta di un codice da un menù a tendina, quindi in funzione di questo evento mi si compila il campo con il nome del fabbricato e di conseguenza dovrebbe caricarsi l'indirizzo dell'edificio con la macro in questione. Quindi di fatto credo che la macro che mi hai mandato debba essere modificata, ma io proprio non sono in grado di farlo......posso chiederti come?
libre office 4 su windows xp
Gaetanopr
Volontario
Volontario
Messaggi: 3316
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: inserire un solo valore da una tabella db

Messaggio da Gaetanopr »

balapao ha scritto:nel mio file originale di fatto io ho una sorta di modulo che si autocompila con una serie di dati alla scelta di un codice da un menù a tendina, quindi in funzione di questo evento mi si compila il campo con il nome del fabbricato e di conseguenza dovrebbe caricarsi l'indirizzo dell'edificio con la macro in questione. Quindi di fatto credo che la macro che mi hai mandato debba essere modificata, ma io proprio non sono in grado di farlo......posso chiederti come?
Dovrei vedere com'è strutturato il tuo file, in quale cella agisce il menù a tendina e dove vuoi venga riportato il risultato quindi devi allegare un esempio UGUALE all'originale naturalmente con la sola parte dei dati interessati
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

ok ho elaborato un file "prova modello".......tra l'altro ho visto che se riesco ad ottenere l'indirizzo del fabbricato potrei con la stessa modalità ottenere altri dati oggettivi del modello che per ora nn vengono inseriti!!! Il db di prigine dati è quello che vi ho mandato prima.
Allegati
prova modello.ods
(17.92 KiB) Scaricato 99 volte
libre office 4 su windows xp
Gaetanopr
Volontario
Volontario
Messaggi: 3316
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: inserire un solo valore da una tabella db

Messaggio da Gaetanopr »

Ti avevo fatto un paio di domande alle quali non hai risposto ricominciamo
1)la cella dove tu scrivi il fabbricato è H2 foglio1? solo H2 oppure la colonna H?
2)parlavi di automatismo, ma nel file allegato non ne vedo, quindi come viene compilata questa cella o celle?
3)i dati dobbiamo riportarli nella colonna I presumo, vuoi che rimanga questa intestazione oppure l'intestazione del db, perchè una volta effettuata la ricerca
viene ripreso pure il nome del campo, dato che viene a crearsi un'area database.
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

Il foglio1 richiama la tabella db e nn ci devo fare nulla, quindi man mano che questi dati vengono integrati devo avere la possibilità di richiamrli nel foglio buoni richiamando con il menù a tendina un codice (D16) al quale con una serie di CERCA.VERT vengono agganciati gli altri dati, tantè che il foglio sarà bloccato con password in modo da nn essere modificabile praticamente nulla ad eccezione del codice. I codici che entrano in una query nel foglio1 per ora nn ci sono. A seguire dovrò poter impostare la macro nel mio file più complesso di questo in cui il db ha un altro nome e nel quale i dati del foglio 1 sono richiamati in un altro foglio (riepilogo) per essere integrati con altri dati.
Spero di essre stata chiara........
libre office 4 su windows xp
Gaetanopr
Volontario
Volontario
Messaggi: 3316
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: inserire un solo valore da una tabella db

Messaggio da Gaetanopr »

Ho cambiato la macro, tu per inserirla nel tuo file oltre a copiarla in un modulo, dovrai fare tasto dx sulla linguetta del foglio "buono"--> Eventi foglio--> Contenuto modificato e associ la macro
Allegati
prova modello.ods
(17.94 KiB) Scaricato 126 volte
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
balapao
Messaggi: 50
Iscritto il: venerdì 11 ottobre 2013, 11:00

Re: inserire un solo valore da una tabella db

Messaggio da balapao »

Funzionaaaaaaaaa!!! grazie 1000
libre office 4 su windows xp
Rispondi