PDA

View Full Version : Formula in Excel e consiglio database


marknot
01-05-2008, 10:30
Salve a tutti...cercando sul forum mi rivolgo a Voi "nel senso per Voi sarà una sciocchezza":D ..ho bisogno di una formula particolare per excel(non riesco ad impostarla a dovere)

vi spiego il quesito:

lavorando per righe e colonne,

in riga 1 ho un dato, ed esegue lavorazioni in varie colonne a seguire. il risultato di cui o bisogno nasce da questa formula

se B:B (cioè se in tutta la colonna B) il valore della cella è uguale al mese e anno (es.04/2008....05/2008..ecc.) E in C:C (tutta la
colonna C) il valore della cella è uguale a un numero (55, 66, ecc) da me stabilito, in L1 mi dai la somma da D->I... solo se tutti e due i casi sono veri mi esegui la somma.

più semplicemente se in due colonne e in una data riga i due valori sono uguali in una data cella mi dai la somma di tot celle se vero
se falso il valore 0.

In tale occasione volevo consigli relativi a un database semplice "da spiegare", gratuito magari...

Vi ringrazio anticipatamente

john_revelator
01-05-2008, 13:11
Se ho capito bene prova a dare un'occhiata alla funzione di excel matr.somma.prodotto

Per quel che riguarda il database non saprei. Di gratuito ti consiglierei mysql ma non so se sia ciò che cerchi. :)

cdimauro
01-05-2008, 18:05
MySQL ha doppia licenza: commerciale e GPL.

FireBird http://www.firebirdsql.org/ è un engine con licenza BSD-like, quindi sostanzialmente libero / gratuito.

MarcoGG
02-05-2008, 10:29
in riga 1 ho un dato, ed esegue lavorazioni in varie colonne a seguire. il risultato di cui o bisogno nasce da questa formula

se B:B (cioè se in tutta la colonna B) il valore della cella è uguale al mese e anno (es.04/2008....05/2008..ecc.) E in C:C (tutta la
colonna C) il valore della cella è uguale a un numero (55, 66, ecc) da me stabilito, in L1 mi dai la somma da D->I... solo se tutti e due i casi sono veri mi esegui la somma.

più semplicemente se in due colonne e in una data riga i due valori sono uguali in una data cella mi dai la somma di tot celle se vero
se falso il valore 0.


Ma in L1 vuoi la somma dei valori delle celle di tutta la tabella [ D2:In ] oppure L1=somma valori riga1 / L2, L3 ecc... ?


In tale occasione volevo consigli relativi a un database semplice "da spiegare", gratuito magari...


Beh, già che stai usando Excel perchè non dare un'occhiata ad Access ?
Nessun DataBase è "semplice da spiegare", dipende dal grado di profondità che si vuole raggiungere. Certo, se per scopi didattici a livello "dummy", non ti consiglio certo Oracle...

marknot
02-05-2008, 10:53
[QUOTE=MarcoGG;22272487]Ma in L1 vuoi la somma dei valori delle celle di tutta la tabella [ D2:In ] oppure L1=somma valori riga1 / L2, L3 ecc... ?

Ciao mi spiego meglio, intanto Vi rigrazio per aver risposto :) ,
praticamente a parole

in una colonna A:A (dove ci sono date) in una B:B (dove ci sono numeri) in una cella a scelta devo a avere la somma di D1,E1,F1,G1,H1. Se e solo se contemporaneamente in A:A e in B:B i due valori sono quelli richiesti.
es.

A1= 04/08/2008 B1= 55



D1= 3 E1= 1 F1=4 G1=8 H1=5



O1= (SOMMA) 3+1+4+8+5 se A1=08/2008 (mi interessa solo il mese) e B1=55

se A1 è 09/2008 e B1=55 --->=0 mi da zero se falso

se B1 è 45 e A1 è 08/2008--->=0 mi da zero se falso



:mc:

???

MarcoGG
03-05-2008, 09:47
in una colonna A:A (dove ci sono date) in una B:B (dove ci sono numeri) in una cella a scelta devo a avere la somma di D1,E1,F1,G1,H1. Se e solo se contemporaneamente in A:A e in B:B i due valori sono quelli richiesti.
es.

A1= 04/08/2008 B1= 55

D1= 3 E1= 1 F1=4 G1=8 H1=5

O1= (SOMMA) 3+1+4+8+5 se A1=08/2008 (mi interessa solo il mese) e B1=55

se A1 è 09/2008 e B1=55 --->=0 mi da zero se falso

se B1 è 45 e A1 è 08/2008--->=0 mi da zero se falso


Perfetto allora, non c'è come spiegarsi chiaro che la soluzione arriva subito ! :D
Metti nella colonna 'O' a partire da [O1] la seguente furmula :

=SE(E(E(MESE(A1)=8;ANNO(A1)=2008);B1=55);SOMMA(D1:H1);0)

Fammi sapere... ;)

marknot
03-05-2008, 11:11
:D Grazie, ho dovuto modificare qualcosina, nel senso dividere la colonna mese e anno cosi risulta più semplice... volevo solo chiederti se a questo punto:



=SE(E(E(MESE(A1)=8;ANNO(A1)=2008);B1=55);SOMMA(D1:H1);0)



posso riuscire a sommare automaticamente quel valore, tutto in una cella tutte le volte che in A:A e B:B il risutlato è Vero.!?!?!
nel senso somma D:D-H:H solo se incontri in A:A e in B:B quei valori cosi da avere un valore unico sommato automaticamente...

ti ringrazio infinitamente :sofico: mi hai salvato...HAHAHA
ciao e grazie ancora...

MarcoGG
04-05-2008, 09:03
volevo solo chiederti se a questo punto:

=SE(E(E(MESE(A1)=8;ANNO(A1)=2008);B1=55);SOMMA(D1:H1);0)

posso riuscire a sommare automaticamente quel valore, tutto in una cella tutte le volte che in A:A e B:B il risutlato è Vero.!?!?!
nel senso somma D:D-H:H solo se incontri in A:A e in B:B quei valori cosi da avere un valore unico sommato automaticamente...


Beh, la soluzione più semplice ce l'hai già a portata di mano.
Basta che, ad esempio in [P1] tu inserisca la somma dei totali-parzali già calcolati per ogni riga con la mia precedente formula, ossia :

[P1] =SOMMA(O:O)

marknot
04-05-2008, 10:50
ok...perfetto..!!ti ringrazio.....:D

marknot
05-05-2008, 20:47
Ciao, volevo sapere se era possibile ripetere tale formula in automatico, mi spiego:

= SE(E(E('foglio2'!Z2=4);'foglio2!'AB2=55);SOMMA('foglio2!' AE2:AL2);0)

questa è la formula che sapientemente mi hai consigliato funziona alla perfezione l'ho dovuta solo affinare leggermente... unica cosa siccome gli intervalli sono lunghi, per ripeterla come è possibile?? se copio solo la formula mi da la lettera dopo ma non l'intervallo?!?:mc: :muro: :mbe: metterla a mano per tipo 200 colonne è impossbile!!ci vuole una vita... praticamente in automatico doverebbe riconoscere gli intervalli.......ti ringrazio ancora!!:sofico:

MarcoGG
06-05-2008, 08:36
Non sono sicuro di aver capito cosa intendi, comunque in generale se hai una formula che calcola in base a dati presi in una certa riga ( come è la formula che ti ho postato ), semplicemente trascinando la cella verso il basso ottieni la traslazione della formula sulle altre righe...
Se vuoi che uno o più riferimenti nella formula rimangano fissi nonostante il trascinamento allora usi il simbolo dollaro $ ( es.: $A$1 )...
Se questo non ti basta cerca di essere più chiaro magari...:)

marknot
06-05-2008, 16:02
Non sono sicuro di aver capito cosa intendi, comunque in generale se hai una formula che calcola in base a dati presi in una certa riga ( come è la formula che ti ho postato ), semplicemente trascinando la cella verso il basso ottieni la traslazione della formula sulle altre righe...
Se vuoi che uno o più riferimenti nella formula rimangano fissi nonostante il trascinamento allora usi il simbolo dollaro $ ( es.: $A$1 )...
Se questo non ti basta cerca di essere più chiaro magari...:)



CIAO, mi spiego meglio,:D

= SE(E(E('FOGLIO1'!K2=4);'FOGLIO1'!M2=55);SOMMA('FOGLIO2'!P2:W2);0)
= SE(E(E('FOGLIO1'!Z2=4);'FOGLIO2'!AB2=55);SOMMA('FOGLIO2'!AE2:AL2);0)
= SE(E(E('FOGLIO1'!AO2=4);'FOGLIO1'!AQ2=55);SOMMA('FOGLIO2'!AT2:BA2);0)

....


qui di seguito elenco le formule, come potrai notare gli intervalli sono regolari
K2...Z2...AO2, ecc ecc. il problema che ho e che dovrei mettere a mano questi intervalli per ogni prima cella di tipo 500 colonne in un foglio nuovo dove farmi i calcoli...
quelli che vedi sono fatti a mano, in automatico non riesce a calcolare lintervallo? come se fosse A2..B2.. ma invece K2...Z2 e cosi via er il resto...
come posso fare?!?! questo è vitale e farlo a mano ci vorrebbe una vita!!

grazie ancora e scusa il disturbo:rolleyes:

MarcoGG
07-05-2008, 09:26
= SE(E(E('FOGLIO1'!K2=4);'FOGLIO1'!M2=55);SOMMA('FOGLIO2'!P2:W2);0)
= SE(E(E('FOGLIO1'!Z2=4);'FOGLIO2'!AB2=55);SOMMA('FOGLIO2'!AE2:AL2);0)
= SE(E(E('FOGLIO1'!AO2=4);'FOGLIO1'!AQ2=55);SOMMA('FOGLIO2'!AT2:BA2);0)


Qui hai cambiato diverse "carte in tavola" mi pare... :D
Ci sono addirittura cambi di foglio nella stessa formula... Ma non doveva essere una somma riga per riga ? :confused:
Ma non sarebbe meglio fare un foglio per ogni intervallo dati e poi alla fine un Foglio "Risultati" con tutte le somme parziali/totali ?
Stando a quello che dici, 500 colonne-formula per 15 colonne-intervallo = 7500 colonne ! :eek:


qui di seguito elenco le formule, come potrai notare gli intervalli sono regolari
K2...Z2...AO2, ecc ecc. il problema che ho e che dovrei mettere a mano questi intervalli per ogni prima cella di tipo 500 colonne in un foglio nuovo dove farmi i calcoli...
quelli che vedi sono fatti a mano, in automatico non riesce a calcolare lintervallo? come se fosse A2..B2.. ma invece K2...Z2 e cosi via er il resto...
come posso fare?!?! questo è vitale e farlo a mano ci vorrebbe una vita!!


K2, Z2, AO2 non sono affatto "regolari", come dici :
K2 sta sulla colonna 11, Z2 colonna 26, AO2 colonna 41
La progressione è 11-15-15...

Comunque ho capito ciò che vuoi fare. Si può realizzare tranquillamente in VBA : Premi un tasto e ti ritrovi tutto compilato in automatico.
Il solo problema è sapere con precisione che cavolo deve fare ! :D

marknot
07-05-2008, 14:27
ALLORA.... i fogli devono funzionare cosi, mi servono piu dati verticali e orizzontali, e ne sono assai. per orizzontali una somma è ok, per verticale mi interessano gli intervalli xke questi punti vengono ripresi piu volte nell'arco di due mesi. vabbe cmq grazie lo stesso. cosa voglio fare lo so senno non di certo venivo a chidere informazioni.;)

MarcoGG
07-05-2008, 16:08
ALLORA.... i fogli devono funzionare cosi, mi servono piu dati verticali e orizzontali, e ne sono assai. per orizzontali una somma è ok, per verticale mi interessano gli intervalli xke questi punti vengono ripresi piu volte nell'arco di due mesi. vabbe cmq grazie lo stesso. cosa voglio fare lo so senno non di certo venivo a chidere informazioni.;)


:rolleyes:

marknot
08-05-2008, 09:25
:mc: Devo trovare una soluzione!

=SE(E(E('FOGLIO1'!AO2=4);'FOGLIO1'!AQ2=55);SOMMA('FOGLIO2'!AT2:BA2);0)
=SE(E(E('FOGLIO1'!BD2=4);'FOGLIO1'!BF2=55);SOMMA('FOGLIO2'!BI2:BP2);0)
=SE(E(E('FOGLIO1'!BS2=4);'FOGLIO1'!BU2=55);SOMMA('FOGLIO2'!BX2:CE2);0)


questi sono i primi 3 intervalli (regolari), 15...

devo impostare questa formula in automatico che mi dia quella formula con quell'intervallo per una lunga serie di colonne...? una dritta? a mano è impossibile mettere gli intervalli......mi manca solo questo...:D !!!:help:

marknot
08-05-2008, 11:20
UP!!