› Excel e gli applicativi Microsoft Office › Funzione SE con varie possibilità
-
AutoreArticoli
-
Ciao a tutti,
Sto cercando di risolvere un rompicapo che non riesco ad aggiustare e sicuramente qualcuno di voi avrà la risposta sia negativa che positiva.
All'interno di un foglio 1 in cella A1 ho una formula come questa:
=SE(O(Foglio2!A1="";Foglio2!A2="";Foglio2!A3="";Foglio2!A4="");Foglio1!A12;"")L'intento è quello di avere una funzione SE ma con condizioni disgiunte nel senso io non voglio che la funzione lavori se tutte le condizioni sono rispettate, ma vorrei che la funzione lavori se trova una di queste condizioni:
Es. se nel foglio2 in A1 non c'è nulla fammi vedere foglio1A12
se nel foglio2 in A2 non c'è nulla fammi vedere foglio1A12
e cosi via come se fossero piu funzioni se che lavorano in base a quale cella è valorizzata.
Altra cosa molto importante provando alcune cose che poi non hanno funzionato ho notato che accorpando più formule alcune volte il valore in A1 che è formattato come Valuta si perde nel senso che non è più in Valuta ma escono numeri normali senza il simbolo dell'euro. Vorrei che la formula mantenesse la formattazione originale.
Non volevo affidarmi al VBA ma se non c'è una soluzione vedremo so di essere nella parte forum legata alle formule.
Spero di essermi spiegato ed allego un file prova con la struttura che mi serve
Grazie mille a tutti voi per l'aiuto.
Anna
Allegati:
You must be logged in to view attached files.ciao
un esempio
=SE(CONTA.SE(Foglio2!$A$1:$A$10;"<>")=0;A12;"")
per la formattazione basta formattare le celle prima come valuta
Ciao Gianfranco55 e grazie della risposta,
ho provato la formula ma sembra non funzionare nello specifico nel file in allegato:
nel foglio 2 tra a1 e a10 non c'è nulla, quindi dovrebbe farmi vedere a12 del foglio1 ma non me la fa vedere non so perchè ho fatto varie prove forse sbaglio qualcosa.
Es. adesso la data in A5 è 14/06 e nel foglio 2 non c'è nulla, mi dovrebbe far vedere a12 in A1
Se invece la data in A5 è 14/06 e g1:g4 del foglio 1 = 1 (SI POPOLA IL FOGLIO 2 TRA A1:A10) dovrebbe non far vedere nulla in A1
Allego il file se volessi dare un occhiata non so cosa sto sbagliando.
Grazie mille
Allegati:
You must be logged in to view attached files.=SE(CONTA.SE(Foglio2!$A$1:$A$10;"")=10;A12;"")
oppure
=SE(CONTA.SE(Foglio2!$A$1:$A$10;"=""")=0;A12;"")
ciao
partiamo da questa che è tua e prima non avevo visto
e forse ho capito male
=SE(E(Foglio1!A5<DATA.VALORE("15/06/2025");Foglio1!G1=1);"1";"")
se utilizzi "1" avrai un testo perciò
si può usare
=SE(CONTA.SE(Foglio2!$A$1:$A$4;"?*")>0;A12;"")
se invece usi un numerico
=SE(E(Foglio1!A5<DATA.VALORE("15/06/2025");Foglio1!G1=1);1;"")
useremo
=SE(CONTA.SE(Foglio2!$A$1:$A$4;">0")>0;A12;"")
ciao,
hai provato con =SE(E(Foglio2!A1="";Foglio2!A2="";Foglio2!A3="";Foglio2!A4="");Foglio1!A12;"")
Ma nel foglio2 da A1-A4 devi avere una sola cella con un valore
=SE(MIN(Foglio2!A1:A4)=0;A12;MIN(Foglio2!A1:A4))
=SE(MIN(Foglio2!A1:A4)=0;A12;"")
=SE(CONTA.VALORI(Foglio2!A1:A7)=0;A12;"")
ciao
Oscar
solo per didattica
Anna usa un testo non un numero (non capisco il perchè)
perciò il MIN non funziona
poi il foglio 2 ha delle formule
perciò anche il CONTA.VALORI() non va bene
darà sempre lo stesso risultato visto che le formule sono calcolate come cella piena
ecco perchè io uso "?*"
nb
se la colonna d'appoggio in foglio 2 non servisse ad altri scopi
basterebbe
=SE(E(A5<DATA.VALORE("15/06/2025");SOMMA(G1:G4)=0);A12;"")
Ciao a tutti,
mi sembra che la soluzione:
=SE(CONTA.SE(Foglio2!$A$1:$A$4;"?*")>0;A12;"")
forse dovrebbe andare bene, avrei però bisogno di una formula che preveda il rispetto di due condizioni ma che non sia un SE, per intenderci (es. facendo riferimento al file andrebbe a sostituire le formule presenti nel foglio 2 tra A1 e A4:
cella (A5>data.valore("15/06/2025")&G1=1&G2=1&G3=""&G4="")=1
Ho provato con questa ma non sembra funzionare anche se rispetta le condizioni mi da sempre falso
=(Foglio1!A5<DATA.VALORE("15/06/2025")&Foglio1!G1=1&Foglio1!G2=1&Foglio1!G3=""&Foglio1!G4="")= 1Se riesco a far uscire 1 al posto di Falso e nel caso non rispetti le condizioni non far uscire nulla penso di aver risolto.
Grazie mille a tutti per l'aiuto siete sempre gentilissimi e scusatemi se magari ho creato un po di confusione ma sto cercando di capirci qualcosa anche io
Allegati:
You must be logged in to view attached files.ciao
Oscar
solo per didattica
Ciao Franco
Si ma le formule non è roba per mè meglio che ci guardi tu che sei un genio
Ho scaricato il suo foglio , ma nel foglio 2 non ho notato nulla
forse ho dato una struttura sensata ma mi servirebbe la formula finale che nasconde la cifra in base alle condizioni che possono essere:
Se A5<15/06/2025 e foglio2.A1 = 1 -------->mostra la cifra
Se A5<15/06/2025 e foglio2.A2 = 1 -------->mostra la cifra
Se A5>=15/06/2025 e foglio2.A1 = 1 -------->nascondi cifra la cifra
Se A5>=15/06/2025 e foglio2.A2 = 1 -------->nascondi la cifra
Se A5>30/05/2025 e foglio2.A1 = "" e foglio2.A2 = "" -------->mostra la cifra
il tutto in una sola cella che in questo caso è A1 nel foglio 1, secondo voi si può fare?
mi sono persa scusate
ciao
NON CON QUESTI PARAMETRI
la formula senza la parte in rosso può essere
=SE(E(A5<DATA.VALORE("15/06/2025");O(Foglio2!$A$1=1;Foglio2!$A$2=1));1;SE(E(A5>DATA.VALORE("15/06/2025");O(Foglio2!$A$1=1;Foglio2!$A$2=1));"";0))
Se A5<15/06/2025 e foglio2.A1 = 1 -------->mostra la cifra
Se A5<15/06/2025 e foglio2.A2 = 1 -------->mostra la cifra
Se A5>=15/06/2025 e foglio2.A1 = 1 -------->nascondi cifra la cifra
Se A5>=15/06/2025 e foglio2.A2 = 1 -------->nascondi la cifra
Se A5>30/05/2025 e foglio2.A1 = "" e foglio2.A2 = ""
per la terza parte devi decidere che precedenza ha
<15/06=1
ma 15/06 è maggiore del 30/05 che prevede
>30/05 =""
a parte questo la parte in rosso deve essere messa su 2 celle A1 - A2
le quattro variabili sopra dove vanno messe
Probabilmente vi sto facendo uscire pazzi e molto molto probabilmente nel provare a capire e trovare una soluzione ho fatto errori di valutazioni che mi hanno portata in errore. Per questo ho deciso di ascoltare qualsiasi consiglio anche su un eventuale modifica del foglio.
Vi allego un nuovo file dove è presente la struttura dei fogli e delle celle fatte in modo corretto, nello specifico:
Nel Foglio 1 sono presenti delle celle che non posso modificare in alcun modo e soprattutto la cella A1 come anche quella della data sono uniche e non possono essere sdoppiate, insomma è un foglio obbligato per come lo vedete.
Il foglio 2 invece è un foglio creato da me (d'appoggio) che può essere modificato in qualsiasi modo anche rispetto alle formule che ho inserito io. Nel foglio 2 ho inserito tutte le regole che il foglio dovrebbe rispettare e spero possa essere utile per trovare una soluzione, ora dovrebbe essere molto più chiaro.
Grazie mille a tutti e scusate se vi sto facendo girare in tondo ma probabilmente c'ho capito poco anche io.
Allegati:
You must be logged in to view attached files.ciao
=SE(CONFRONTA(1;Foglio2!$C$2:$C$10;0)+1={2\6\7};$A$12;"")
da confermare matriciale CTRL MAIUSCOLO INVIO
Ciao Gianfranco55,
grazie della risposta, non conosco questa funzione mi potresti dire come funziona?
inserendola nel foglio mi da errore "ESPANSIONE" e non so come funziona questa parte che mi specifichi:
da confermare matriciale CTRL MAIUSCOLO INVIO
allora sembra che ci sia riuscita, l'unico problema me lo da sulle date < del 15/06, nello specifico:
se inserisco il prodotto 1 oppure prodotto 1 + prodotto 2 e la data è minore del 15/06 dovrebbe mostrare l'importo mentre in realtà lo nasconde, per il resto funziona tutto correttamente
allego il file con il problema riscontrato
Allegati:
You must be logged in to view attached files.se dovessi avere bisogno di una seconda cella con ulteriore data è possibile trasformare questa funzione:
=+SE(E(Foglio1!A5<DATA.VALORE("15/06/2025");Foglio1!G1=1;Foglio1!G2=1;Foglio1!G3="";Foglio1!G4="");1;"")utilizzando un intervallo di date come ad esempio:
A5 < 15/06 ma A6<16/06
si potrebbe fare?
Grazie mille a tutti
ciao
non serve confermarla matriciale
=SE(SE.ERRORE(CONFRONTA(VERO;CONFRONTA(1;Foglio2!C2:C10;0)+1={2\6\7};0);0);$A$12;"")
ma alla fine mi sono ritrovato a lavorare all' UCAS
ti basta
=SE(O(Foglio2!C2=1;Foglio2!C6=1;Foglio2!C7=1);A12;"")
=+SE(E(Foglio1!A5<DATA.VALORE("15/06/2025");Foglio1!G1=1;Foglio1!G2=1;Foglio1!G3="";Foglio1!G4="";Foglio1!A6<DATA.VALORE("16/06/2025"));1;"")
Ciao gianfranco e grazie mille dell'aiuto
ho dovuto modificare il file con una seconda data ed ho modificato le formule in questo modo:
foglio 2 c6:
=+SE(E(Foglio1!A5<DATA.VALORE("15/06/2025");Foglio1!G1=1;Foglio1!G2=1;Foglio1!G3="";Foglio1!G4="";Foglio1!A6<DATA.VALORE("16/06/2025"));1;"")e la tua formula l'ho modificata cosi:
=SE(O(Foglio2!C2=1&A6<DATA.VALORE("15/06/2025");Foglio2!C6=1;Foglio2!C7=1;Foglio2!C2=1&A6>=DATA.VALORE("15/06/2025"));A12;"")ma non so perchè se inserisco in A5 20/07 e in A6 30/08 e sono inseriti g1 e g2 quindi mi da come corretto che sia nel foglio 2 cella C9 un "1" e quindi mi dovrebbero nascondere la cifra invece si vede.
ti allego il file perchè ho fatto più prove di modifica ma non ne vuole sapere
grazie ancora e scusa sto disastro
Allegati:
You must be logged in to view attached files.ciao
ti stai incasinando
in c2 ci può essere solo 1
la data non centra
ti ho messo la formula semplificata
quella è da usare altro non serve
secondo me hai problemi con le formule in foglio 2
che a mio avviso non serve
-
AutoreArticoli
