[Risolto] CONTA.SE

Discussioni sull'applicazione per i fogli di calcolo
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

[Risolto] CONTA.SE

Messaggio da sandro merlino »

Ciao a tutti,
Nel file che vi allego ho 3 fogli
In sales volume in N22 la cella che mi sceglie la lingua (italiano - inglese)
In sales volume In L78 posso variare l'anno

In shifts in T125-T129 e U125-U129 le varie opzioni che possono essere inserite nella colonna I
In shifts nella colonna I i turni totali del giorno, per ogni giorno del mese, per tutti i mesi. Io ho inserito solo gennaio e inizio febbraio per ora

In foglio 3 ho in M102-M103 la prima settimana intera dell'anno che va da lunedi a domenica e poi in giu la seconda e terza fino alla 52 settimana

Vorrei calcolare in S104 il numero dei giorni che nella settimana in M102-M103 è diverso da CLOSE o CHIUSO(in entrambi le lingue) per la prima settimana considerando che se cambio l'anno mi vambia anche la settimana.

Esempio
per l'anno 2019 la prima settimana è 7/2/2019-13/1/2019
per l'anno 2020 la prima settimana è 6/2/2019-12/1/2019

Grazie
sandro
Allegati
calcolo budget settimanale -.xls
(155.5 KiB) Scaricato 118 volte
Ultima modifica di sandro merlino il martedì 10 dicembre 2019, 19:50, modificato 1 volta in totale.
openoffice 4.1.1
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao a tutti,
Mi chiedevo se il quesito sopra e’ stato ben spiegato oppure ci sono dettagli da chiarire.
Accetto anche suggerimenti per andare avanti perché al momento sono bloccato

Grazie

Sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Ciao. Un file xls?
In shifts in T125-T129 e U125-U129 le varie opzioni che possono essere inserite nella colonna I
E giustamente nella colonna I compaiono anche altre opzioni, come "1, 6:00" in I139..che non hai spiegato cosa voglia dire (che qualcuno qui nel forum lo sappia non fa testo)
Vorrei calcolare in S104 il numero dei giorni che nella settimana in M102-M103 è diverso da CLOSE o CHIUSO(in entrambi le lingue) per la prima settimana considerando che se cambio l'anno mi vambia anche la settimana.
S104 di quale foglio?
Il numero dei giorni? quindi siccome nel tuo esempio in 'Shift'.I131:K137 non compare nemmeno un CLOSE o un Chiuso deve darti 7? Scommetto che la risposta è no.

Ogni volta che apri una nuova discussione devi essere preciso nel dare le spiegazioni, non è che perchè alcune di esse le hai fornite in precedenti discussioni, tu non sia più tenuto a riportarle. Praticamente ricevi attenzione soltanto dai tuoi vecchi interlocutori perchè ti precludi la possibilità di farti aiutare dagli altri. :knock:

Ma con tutte le formule che hai inserito in questo progetto, non ne sai più di noi?
Ogni volta che provo a darti una mano mi vado a guardare le vecchie soluzioni che abbiamo trovato e faccio alcune piccole modifiche, con la differenza che questo è il tuo file e lo conosci bene, io praticamente mi devo calare tutte le volte nel baratro di questo progetto contorto e per un estraneo incomprensibile.

Dato che i tuoi capi ( :twisted: ) hanno intenzione di farti sviluppare questo progetto all'infinito facendoti aggiungere di tutto e di più e capisco che ormai nemmeno più ti rendi conto delle cose importanti da dire è giunto il momento che inizi a preparare un "Manuale di sopravvivenza" da allegare a ogni prossima discussione in cui spieghi l'ABC del progetto (lo scriverei io il manuale dato che a richieste complicate siamo riusciti a tirare fuori delle formule matriciali notevoli..sarebbe utilissimo per lo sviluppo di formule avanzate :lol:)

Detto ciò, ti darò una mano visto che sono tra i pochi che sono intervenuti in passato. Il problema è che di notte non sono molto produttivo quindi non aspettarti una soluzione a breve..anzi. Attendo risposte al primo blocco di domande e poi ti farò spulciare le vecchie formule :D
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Il file è xls perchè in azienda usiamo entrambi calc e xls. Non so come mai me lo ha salvato in xls

In shifts in T125-T129 e U125-U129 le varie opzioni che possono essere inserite nella colonna I
Nella colonna I compaiono anche altre opzioni, come "1, 6:00" in I139. Questa indica il totale turni del giorno dei dipendenti. Ai fini del calcolo è ininfluente

Vorrei calcolare in S104 il numero dei giorni che nella settimana in M102-M103 è diverso da CLOSE o CHIUSO(in entrambi le lingue) per la prima settimana considerando che se cambio l'anno mi vambia anche la settimana. Mi sono scordato, del foglio3

S104 di quale foglio?
Il numero dei giorni? quindi siccome nel tuo esempio in 'Shift'.I131:K137 non compare nemmeno un CLOSE o un Chiuso deve darti 7? Scommetto che la risposta è no.
La risposta è SI. Anche per la seconda settimana sarà 7 mentre per la terza settimana sarà 6. Spero riuscendo a cambiare i riferimenti di adattarla alle 52 settimane

Ogni volta che apri una nuova discussione devi essere preciso nel dare le spiegazioni, non è che perchè alcune di esse le hai fornite in precedenti discussioni, tu non sia più tenuto a riportarle. Praticamente ricevi attenzione soltanto dai tuoi vecchi interlocutori perchè ti precludi la possibilità di farti aiutare dagli altri. Concordo pienamente con te ma spesso vado di fretta e non me ne accorgo. Sei stato molto gentile a farmelo notare. Non lo faccio di proposito

Ma con tutte le formule che hai inserito in questo progetto, non ne sai più di noi? Questo non è un mio progetto ma aziendale. Arriva manager e aggiunge calcolo e io mi trovo nella merda perchè la formula deve essere automatica e io non lo so fare

Prenditi tutto il tempo che ti serve tanto io non lo so fare.

Grazie 1000

sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Ok, almeno non c'è da tener conto dei vari "1, 6:00"..credevo peggio.
Ti hanno incastrato su questo progetto perchè ti stanno facendo usare un foglio di calcolo quando la maggior parte delle cose che desiderano sono dei resoconti...quindi il programma più appropriato da usare sarebbe stato Base. A questo punto avresti imparato a usarlo alla perfezione e ad ogni nuova richiesta avresti trovato una semplice soluzione.
Un'idea chiara ora ce l'ho, provo a scrivere la formula e ti faccio sapere se mi serve altro.
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Hai proprio detto bene. Mi hanno incastrato per tutto questo tempo e
continueranno fino a che possono. Chiunque viene dice la sua e si
aggiungono formule e non si levano mai.
Non conosco BASE ma mi fido di te
Grazie
Sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

In S254 di Foglio3 incolla una di queste due formule:

Codice: Seleziona tutto

=7-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=chiuso")

Codice: Seleziona tutto

=SE(MESE(M253)<>MESE(M252);
7-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=chiuso")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=chiuso");
7-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=chiuso"))
La prima proposta è più sobria, ma se tra una tabella e l'altra di foglio Shifts venisse per caso inserito un "close" o un "chiuso" verrebbero conteggiati per sbaglio.
La seconda proposta è ben lontana dall'essere sobria, praticamente se la settimana è a cavallo di due mesi fa un conta.se per ciascun mese coinvolto...cioè controlla solo il contenuto delle 7 celle interessate.
Sfruttando le date di colonna M di Foglio3, non c'è alcun problema in presenza di anni bisestili e con mesi che finiscono con 28,30,31.
Come puoi notare ho sviluppato direttamente le formule testandole sulla quarta settimana che è l'esempio più critico.
Fai i dovuti test
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83,
Tu sei troppo avanti, troppo preciso ma soprattutto troppo bravo.
Allora ti spiego tutto il problema che mi affligge da tanto tempo. Avevo chiesto di calcolare:
Vorrei calcolare in S104 il numero dei giorni che nella settimana in M102-M103 è diverso da CLOSE o CHIUSO(in entrambi le lingue) per la prima settimana considerando che se cambio l'anno mi vambia anche la settimana.
Questo perchè nei miei precedenti quesiti che sono complicati e macchinosi lo capisco non avevo ricevuto difficoltà. Quindi mi sono detto di provare con una domanda piu semplice.

La formula che devo trovare mi deve calcolare l'obiettivo della settimana nel foglio3 per tutte e 52 le settimane. Settimane intere a partire dal primo lunedi alla domenica con i giorni che precedono il primo lunedi lasciati come inesistenti. Il primo obiettivo settimanale deve essere in foglio3.N104 e il secondo in foglio3.N154 e poi alla stessa distanza. Lobiettivo del mese eliminando alcuni giorni non tornerà
Una volta scelta la lingua in sales volume N23,
Devo prendere il primo valore diverso da zero tra sales volumeN80,sales volumeN92,sales volumeN104 che mi rappresentano l'obiettivo mensile
In shifts ho diviso per mesi i giorni lavorativi dove considero solo quelli diversi da CLOSE e CHIUSO

In realtà si tratta di una ripartizione dell'obiettivo del mese in settimane considerando che a cavallo del mese la settimana avrà 2 ripartizioni. Per esempio la 4 settimana di gennaio 2019
avra (obiettivo del mese di gennaio/gg lavorativi del mese di gennaio * gg lavorativi settimana4 che sono 28-31di gennaio + obiettivo del mese di febbraio/gg lavorativi del mese di febbraio * gg lavorativi settimana4 che sono 1-3 di febbraio)

Penso ti sia chiaro ma metto esempio delle prime 4 settimane che ti daranno l'esempio per tutto l'anno

=(SE($'Sales Volume'.N80<>"";$'Sales Volume'.N80;SE($'Sales Volume'.N92<>"";$'Sales Volume'.N92;SE($'Sales Volume'.N104<>"";$'Sales Volume'.N104;"")))/
formula da trovare(conta(da I125 a I155)<>close o chiuso))*
formula che conta i giorni lavorativi della settimana1<> close o chiuso


settimana2
=(SE($'Sales Volume'.N80<>"";$'Sales Volume'.N80;SE($'Sales Volume'.N92<>"";$'Sales Volume'.N92;SE($'Sales Volume'.N104<>"";$'Sales Volume'.N104;"")))/
formula da trovare(conta(da I125 a I155)<>close oppure chiuso))*
formula che conta i giorni lavorativi della settimana1<> close o chiuso


settimana3
=(SE($'Sales Volume'.N80<>"";$'Sales Volume'.N80;SE($'Sales Volume'.N92<>"";$'Sales Volume'.N92;SE($'Sales Volume'.N104<>"";$'Sales Volume'!N104;"")))/
formula da trovare(conta(da I125 a I155)<>close oppure chiuso))*
formula che conta i giorni lavorativi della settimana1<> close o chiuso

settimana4
=(SE($'Sales Volume'.N80<>"";$'Sales Volume'.N80;SE($'Sales Volume'.N92<>"";$'Sales Volume'.N92;SE($'Sales Volume'.N104<>"";$'Sales Volume'.N104;"")))/
formula da trovare(conta(da I125 a I155)<>close oppure chiuso))*
formula che conta i giorni lavorativi della settimana1<> close o chiuso dal 28/1-31/1
+
=(SE($'Sales Volume'.N180<>"";$'Sales Volume'.N180;SE($'Sales Volume'.N192<>"";$'Sales Volume'.N192;SE($'Sales Volume'.N204<>"";$'Sales Volume'!N204;"")))/
formula da trovare(conta(da I225 a I252)<>close oppure chiuso))*
formula che conta i giorni lavorativi della settimana1<> close o chiuso dal 1/2-3/2

Se lo risolvi questo grattacapo di formule, ti faranno un monumento

Ovviamente non ho fretta, è una vita che sta ferma questa formulaccia

Se invece non ti va perchè troppo rognoso ti capisco

Grazie

sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Procediamo con calma...all'improvviso troppe info
Questa è la richiesta iniziale
sandro merlino ha scritto:Vorrei calcolare in S104 il numero dei giorni che nella settimana in M102-M103 è diverso da CLOSE o CHIUSO(in entrambi le lingue) per la prima settimana considerando che se cambio l'anno mi vambia anche la settimana.
1) Le due formule che ti ho fornito rispondono a questo quesito?
2) Anche se abbiamo trovato la risposta in realtà tu devi risolvere un problema simile ma più complesso?
La formula che devo trovare mi deve calcolare l'obiettivo
3) Quale sarebbe questo obiettivo? Volume Vendite ToT Mese/ GG lavorati mese * GG lavorati settimana corrente?
4) Volume Vendite ToT Mese è salvato in sales volumeN80,sales volumeN92,sales volumeN104..è il primo valore non nullo. Ma questo solo per Gennaio.Per gli altri mesi ci saranno altre celle? Saranno sempre 3 e equidistanziate? Nell'esempio della quarta settimana vedo anche altre celle N.
5) cosa significa il passaggio seguente?
L'obiettivo del mese eliminando alcuni giorni non tornerà
Non tornerà perchè sei pessimista e prevedi che la formula darà risultati sbagliati o perchè semplicemente i primi giorni del mese staranno fuori dal calcolo di ripartizione perchè facenti parte della settimana iniziata il mese precedente se il primo del mese non è lunedi? O il conto non tornerà solo per il mese di Gennaio?
Penso ti sia chiaro ma metto esempio delle prime 4 settimane che ti daranno l'esempio per tutto l'anno
6)Grazie per la fiducia!!! Se per caso fino adesso sto procedendo bene nell'analisi del tuo messaggio, ti avviso che questo è un msg modificato..al termine della prima stesura ho iniziato a capirci qualcosa...non puoi immaginare quante volte abbia dovuto rileggere tutto daccapo.
7) Gli esempi sono stati indispensabili per capire, nonostante tu abbia semplicemente cambiato l'intestazione settimana1 settimana2 settimana3 settimana4 ma per tutte queste hai chiesto di trovare una "formula che conta i giorni lavorativi della settimana1<> close ...". Immagino che la settimana1 ti interessi solo alla settimana1, o no?
Se invece non ti va perchè troppo rognoso ti capisco
8) A me sembra che il quesito originario della discussione sia una buona semplificazione del problema che realmente devi risolvere. Se la risposta alla domanda 1 è affermativa e se mi confermi che le date in Foglio3.M202 etc rimarranno nel foglio non credo che stiamo lontano dalla soluzione, anche perchè i GG lavorati nel mese sono più semplici da calcolare. Mi preoccupa solo l'estensione complessiva della formula ...

Fammi sapere quanto ci sono andato vicino e soprattutto le risposte ai punti 1 - 3 - 4 - 7
 Editato: Ho riletto bene l'esempio della quarta settimana...vai a calcolarti il volume del secondo mese/gg lavorati del secondo mese * ultimi giorni della settimana che è a cavallo tra due mesi.
Temo che salti fuori una formulona che farà impallidire le altre presenti nel tuo progetto :roll: 
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Ho anticipato le tue risposte, a cui sei pregato comunque di rispondere così ti dico subito se la seguente formula può andar bene oppure no.

Codice: Seleziona tutto

=SE(MESE(M253)=MESE(M252);
SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M252)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M252)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M252)-1)*100);0)))/
(Giorni.Mese(M252)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=close") -CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100  &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=chiuso"))*
(7-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=chiuso"));
SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M252)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M252)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M252)-1)*100);0)))/
(Giorni.Mese(M252)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=close") -CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100  &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=chiuso"))*
(Data.Diff(M252;DATA(ANNO(M252);MESE(M252)+1;1);"d")-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=chiuso"))+
SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M253)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M253)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M253)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M253)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M253)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M253)-1)*100);0)))/
(Giorni.Mese(M253)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100 &":I"& 125+(MESE(M253)-1)*100+GIORNO(DATA(ANNO(M253);MESE(M253)+1;1)-1)-1);"=close") -CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100  &":I"& 125+(MESE(M253)-1)*100+GIORNO(DATA(ANNO(M253);MESE(M253)+1;1)-1)-1);"=chiuso"))*
(Data.Diff(DATA(ANNO(M253);MESE(M253);1);M253+1;"d")-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100 &":I"& 125+(MESE(M253)-1)*100+GIORNO(DATA(ANNO(M253);MESE(M253)+1;1)-1)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100 &":I"& 125+(MESE(M253)-1)*100+GIORNO(DATA(ANNO(M253);MESE(M253)+1;1)-1)-1);"=chiuso"))
)
Dopo avermi risposto, fai numerosi test perchè non garantisco l'affidabilità nonostante sono stato attento ad assemblarla...sempre se la tua versione sopporta le formule così lunghe. :alarm:
Inseriscila in S254, controlla che sia uguale ai valori calcolati manualmente da te in N254.Fai così per tutte le settimane e se va bene inseriscila direttamente nella colonna N al posto corretto.
Fammi sapere

p.s.
sicuramente per la 52esima settimana la formula è sbagliata e dovremo scrivere una formula a parte.
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Scusa ma in questo momento sono molto incasinato e non posso interagire molto su questo problema ma sei stato velocissimo. Ti rispondo a tutte le tue domande per conferma
Io ho scritto:
Vorrei calcolare in S104 il numero dei giorni che nella settimana in M102-M103 è diverso da CLOSE o CHIUSO(in entrambi le lingue) per la prima settimana considerando che se cambio l'anno mi vambia anche la settimana.
1)
Le due formule che ti ho fornito rispondono a questo quesito?
Le formule che mi hai fornito se non mi sbaglio si riferiscono alla settimana 4. Devo dirti che le ho verificate in poche variani ma mi sembra di si entrambi
2)
Anche se abbiamo trovato la risposta in realtà tu devi risolvere un problema simile ma più complesso?
Confermo
La formula che dovresti trovare mi deve calcolare l'obiettivo settimanale nel foglio3 nelle celle a partire da N104 in giu a distanza di 50 celle
3)
Quale sarebbe questo obiettivo? Obiettivo Vendite ToT Mese/ GG lavorati mese * GG lavorati settimana corrente?
Confermo

4)
Obiettivo Vendite ToT Mese è salvato in sales volumeN80,sales volumeN92,sales volumeN104..è il primo valore non nullo. Ma questo solo per Gennaio.
Confermo
Obiettivo Vendite ToT Mese è salvato in sales volumeN180,sales volumeN192,sales volumeN204..è il primo valore non nullo. Ma questo solo per Febbraio.Confermo
Obiettivo Vendite ToT Mese è salvato in sales volumeN280,sales volumeN292,sales volumeN304..è il primo valore non nullo. Ma questo solo per marzo.Confermo
Fino a dicembre
Per gli altri mesi ci saranno altre celle? Confermo come sopra
Saranno sempre 3 e equidistanziate? Confermo come sopra
Nell'esempio della quarta settimana vedo anche altre celle N.
Non capito
5)
cosa significa il passaggio seguente?
L'obiettivo del mese eliminando alcuni giorni non tornerà
Non tornerà perchè sei pessimista e prevedi che la formula darà risultati sbagliati
Co te sono in una botte di ferro e dormo sogni tranquilli
o perchè semplicemente i primi giorni del mese staranno fuori dal calcolo di ripartizione perchè facenti parte della settimana iniziata il mese precedente se il primo del mese non è lunedi?
Corretto
6) Super fiducia :D :D :D :D
7)
Gli esempi sono stati indispensabili per capire, nonostante tu abbia semplicemente cambiato l'intestazione settimana1 settimana2 settimana3 settimana4 ma per tutte queste hai chiesto di trovare una "formula che conta i giorni lavorativi della settimana1<> close ...". Immagino che la settimana1 ti interessi solo alla settimana1, o no?
Questo non ho capito domanda
8)
A me sembra che il quesito originario della discussione sia una buona semplificazione del problema che realmente devi risolvere. Se la risposta alla domanda 1 è affermativa e se mi confermi che le date in Foglio3.M202 etc rimarranno nel foglio non credo che stiamo lontano dalla soluzione, anche perchè i GG lavorati nel mese sono più semplici da calcolare. Mi preoccupa solo l'estensione complessiva della formula ...
Per me le formule in foglio 3 M102-M103 si possono lasciare e anche quelle in M152-M153 e a seguire se ti agevola. Si possono anche trovare 2 formule una che consideri le stimmane all'interno di un mese e una le settimane a cavallo come la settimana 4 dell'anno 2019 che ha dei giorni a gennaio e altri a febbraio. Come fare non lo so ?

Per il messaggio successivo di dico che in effetti la formula per la mia versione è troppo lunga e non posso fare i test ma la possiamo dividere in altre 2 celle. Possiamo utilizzare N104,M104,M105. Io non riesco ovvio
Non capisco però come mai mi dici di utilizzare S254 e N254. La prima settimana inizia in N104. La 4 settimana è N254
sicuramente per la 52esima settimana la formula è sbagliata e dovremo scrivere una formula a parte.
se hai fatto questa considerazione hai capito benissimo il problema

Grazie infinite

sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Ok. Per le domande che non hai capito, nessun problema...erano ridondanti un pò per scelta e un pò perché avevo scritto dapprima un msg del tutto diverso, poi all’improvviso ho iniziato a capire ciò che chiedevi e ho riscritto il msg e alcune delle domande originali le ho lasciate. Comunque mi hai chiarito tutto.
Parlo di S254 perché la formula l’ho sviluppata li perché settimana più interessante. Dopo aver scritto la formula l’ho copiata e incollata sul forum..ovviamente con quei riferimenti non puoi far altro che inserirla in una cella della riga 254 altrimenti poi quando la copi e la incolli per le altre settimane sballi tutti i riferimenti. Se preferisci inseriscila in N254 direttamente.

Quindi possiamo spezzare la formula in tre parti usando come celle di appoggio M104, M105 (userò M254 N255)? Buona notizia
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Mi chiedevo se fosse possibile usare per la settimana1
M104-M105-N104 del foglio3 e da qui in giù per le altre settimane a stessa distanza
Grazie 1000

Sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Tranquillo. La formula che preparo per la 254 una volta inserita nella sua cella può essere copiata e incollata per le altre settimane
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

In M254

Codice: Seleziona tutto

=SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M252)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M252)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M252)-1)*100);0)))/
(Giorni.Mese(M252)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=close") -CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100  &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=chiuso"))*
(Data.Diff(M252;DATA(ANNO(M252);MESE(M252)+1;1);"d")-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=chiuso"))
In M255

Codice: Seleziona tutto

=SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M253)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M253)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M253)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M253)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M253)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M253)-1)*100);0)))/
(Giorni.Mese(M253)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100 &":I"& 125+(MESE(M253)-1)*100+GIORNO(DATA(ANNO(M253);MESE(M253)+1;1)-1)-1);"=close") -CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100  &":I"& 125+(MESE(M253)-1)*100+GIORNO(DATA(ANNO(M253);MESE(M253)+1;1)-1)-1);"=chiuso"))*
(Data.Diff(DATA(ANNO(M253);MESE(M253);1);M253+1;"d")-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100 &":I"& 125+(MESE(M253)-1)*100+GIORNO(DATA(ANNO(M253);MESE(M253)+1;1)-1)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M253)-1)*100 &":I"& 125+(MESE(M253)-1)*100+GIORNO(DATA(ANNO(M253);MESE(M253)+1;1)-1)-1);"=chiuso"))
In N254

Codice: Seleziona tutto

=SE(MESE(M253)=MESE(M252);
SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M252)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M252)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M252)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M252)-1)*100);0)))/
(Giorni.Mese(M252)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100 &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=close") -CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100  &":I"& 125+(MESE(M252)-1)*100+GIORNO(DATA(ANNO(M252);MESE(M252)+1;1)-1)-1);"=chiuso"))*
(7-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=close")
-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M252)-1)*100+GIORNO(M252)-1 &":I"& 125+(MESE(M253)-1)*100+GIORNO(M253)-1);"=chiuso"));
M254+M255)
Mi sembra il modo più uniforme per suddividerle.
Inoltre per la 52-esima settimana che ha alcuni giorni a dicembre e alcuni giorni a gennaio, dovremo semplicemente modificare M2655 [105+(52-1)*50=2655; corrispondente a M105..M255..], ovvero la seconda formula di questo elenco. Penso che sia il caso di metterci 0 perchè i dati di gennaio dell'anno successivo non penso li avrai
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unluky83
Grazie per le formule ma purtroppo non ho potuto contollarle perchè
se le copio sul file iniziale mi esce errore nome (#NOME?) e se salvo il file, lo chiudo e lo riapro mi esce #N/D
Dove sbaglio?

Mentre nel foglio (format- copia .ods) mi rimane (#NOME?)

Grazie

sandro
Allegati
format - Copia.ods
(209.85 KiB) Scaricato 106 volte
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

#NOME?
Ti dovrebbe venire in mente che forse hai cambiato il nome dei fogli. Infatti nel primo allegato su cui mi sono basato per scrivere le formule il foglio si chiama Shifts e non Shift come nel tuo ultimo allegato. ;)
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Ho fatto la correzione che mi hai detto ma purtroppo il risultato è lo stesso
Ho però notato che quando copio per primo N254 non mi appare (#NOME?) ma 0
Quando invece copio uno dei 2 tra M254 e M255 ottengo come sopra (#NOME?) su tutti e tre

Dove sbaglio? :knock: :knock: :knock: :knock:

Grazie

sandro
Allegati
format - Copia.ods
(213.56 KiB) Scaricato 129 volte
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Questa volta non c'è nulla di sbagliato. Ho copiato il contenuto delle tue celle, le ho cancellate e poi ho reinserito la stessa formula. Il risultato esce. Usando Libreoffice.
Probabilmente il tuo openoffice è da aggiornare perchè non riesce a gestire queste formule.
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Cosa mi consigli? io sto usando openoffice 4.1.4
Mi servirebbe tuo consiglio e come fare
Grazie

sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Ora sono alla 4.1.7. Non sò se risolveresti davvero...non sò che dirti:
1) o adoperiamo altre celle di appoggio
2) o passi a libreoffice, ma poi dovresti ricontrollarti un pò di formule per vedere che tutto funziona bene
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Sicuramente in questi giorni installerò 4.1.7. Speriamo di risolvere ma comunque è meglio avere l'ultima versione.
Qualche altra cella la possiamo avere senza chiedere autorizzazioni varie.
Non posso utilizzare libreoffice perchè vorrebbe dire andare al manicomio per ricontrollare tutte le formule

Dimmi tu cosa sarebbe meglio fare. Ora che abbiamo la formula mi dispiacerebbe non poterla usare

Grazie 1000

sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Io ho fatto solo 3 test e la formula mi sembra buona. Proverei intanto con le celle di appoggio in più. Dammi i riferimenti di due tre celle disponibili. Proviamo
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Grazie per la disponibilità!!
Se consideriamo la prima settimana al momento abbiamo
M102 inizio settimana
M103 fine settimana
Possiamo utilizzare M104-M105-M108-M109
A seguito per le altre settimane con distanza di 50 celle

Grazie 1000
Sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Prova così
M104

Codice: Seleziona tutto

=CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100 &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=close")
+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100  &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=chiuso")
M105

Codice: Seleziona tutto

=CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100+GIORNO(M102)-1 &":I"& 125+(MESE(M103)-1)*100+GIORNO(M103)-1);"=close")
+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100+GIORNO(M102)-1 &":I"& 125+(MESE(M103)-1)*100+GIORNO(M103)-1);"=chiuso")
M108

Codice: Seleziona tutto

=CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100+GIORNO(M102)-1 &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=close")
+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100+GIORNO(M102)-1 &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=chiuso")
M109

Codice: Seleziona tutto

=CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M103)-1)*100 &":I"& 125+(MESE(M103)-1)*100+GIORNO(DATA(ANNO(M103);MESE(M103)+1;1)-1)-1);"=close")
+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M103)-1)*100 &":I"& 125+(MESE(M103)-1)*100+GIORNO(DATA(ANNO(M103);MESE(M103)+1;1)-1)-1);"=chiuso")
N104

Codice: Seleziona tutto

=SE(MESE(M103)=MESE(M102);
SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M102)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M102)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M102)-1)*100);0)))/(Giorni.Mese(M102)-M104)*(7-M105);
SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M102)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M102)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M102)-1)*100);0)))/(Giorni.Mese(M102)-M014)*(Data.Diff(M102;DATA(ANNO(M102);MESE(M102)+1;1);"d")-M108)+
SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M103)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M103)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M103)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M103)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M103)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M103)-1)*100);0)))/(Giorni.Mese(M103)-M109)*(Data.Diff(DATA(ANNO(M103);MESE(M103);1);M103+1;"d")-M109)
)
Se N104 è troppo lunga, sarebbe utile un'altra cella di appoggio in cui mettere questa parte che si ripete due volte nella formula, per ipotesi diciamo Z104:

Codice: Seleziona tutto

=SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M102)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M102)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M102)-1)*100);0)))
Così N104 diverebbe:

Codice: Seleziona tutto

=SE(MESE(M103)=MESE(M102);
Z104/(Giorni.Mese(M102)-M104)*(7-M105);
Z104/(Giorni.Mese(M102)-M014)*(Data.Diff(M102;DATA(ANNO(M102);MESE(M102)+1;1);"d")-M108)+
SE(INDIRETTO("Sales Volume.N"& 80+(MESE(M103)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 80+(MESE(M103)-1)*100);SE(INDIRETTO("Sales Volume.N"& 92+(MESE(M103)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 92+(MESE(M103)-1)*100);SE(INDIRETTO("Sales Volume.N"& 104+(MESE(M103)-1)*100)<>"";INDIRETTO("Sales Volume.N"& 104+(MESE(M103)-1)*100);0)))/(Giorni.Mese(M103)-M109)*(Data.Diff(DATA(ANNO(M103);MESE(M103);1);M103+1;"d")-M109)
)
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Siamo ad un buon punto con qualcosa da correggere. Mi affido a te a questo punto per l'eccellenza
Del messaggio precedente ho Copiato e Incollato la formula in M104,M105,M108,M109 e N104 e poi copiato queste celle per le prime 5 settimane
Quello che ho dovuto fare è cambiare "I"con "J". Perchè la colonna era errata. Anche con excel a volte accade quando celle sono unite. Nessun problema.
Ora che da un numero come risultato mi chiedevo se fosse possibile accorpare qualche cella, eliminare M108 e M109 sarebbe gia perfetto. Possiamo farlo anche dopo a risultato finale totalmente corretto. Siamo stati costretti in passato a dividere la formula quando quelle che mi davi erano spezzate perchè la mia versione di openoffice non le ammettva. In questo caso non succede.
Per ora ho fatto qualche controllo. Per l'anno 2018
-ho visto che quando un mese è totalmente chiuso o close per esempio Gennaio il risultato della settimana in N104 è #div!0
-la settimana 5 mi da risultato #nome

Allego file

Dimmi se sbaglio

Grazie

sandro
Allegati
format - Copia.ods
(216.74 KiB) Scaricato 127 volte
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Ciao
Se vuoi accorparle di nuovo ti rimando a questo Msg, probabilmente sostituendo I con J anche queste ti vanno
viewtopic.php?f=9&t=10137&p=56812#p56746
Se non vanno potrei provare a dividerle in un altro modo...
Se chiudi tutto il mese è normale che esca quell’errore perché prova dividere per Zero. Se vuoi accorpare le formule usando solo due celle di appoggio non credo tu possa gestire l’errore con un Se() perché le formule aumentano di estensione di parecchio. Se Vuoi gestire l’errore, comunque devi dirmi cosa dovrebbe dare come risultato.
SulL’errore nome? ti dico quando guarderò il foglio.
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unlucky83
Purtroppo ho già provato a sostituire nel Msg, viewtopic.php?f=9&t=10137&p=56812#p56746 I con J ma non vanno a meno di miei errori
Se chiudi tutto il mese è normale che esca quell’errore perché prova dividere per Zero.
Si concordo pienamente ma i capi gradirebbero che risultasse 0. Anche se in realtà per me non ha senso nemmeno zero perchè non puoi dare un obiettivo al mese e quindi alla settimana se tutto il mese il negozio è chiuso. Assecondiamoli !!!
Se vuoi accorpare le formule usando solo due celle di appoggio non credo tu possa gestire l’errore con un Se() perché le formule aumentano di estensione di parecchio.
Io vorrei usare solo 2 celle di appoggio M104 e M105. Invece di usare la funzione Se() non sarebbe possibile e forse più breve come lunghezza usare la funzione che dice se la somma delle celle di shiftJ125:j155 chiuso e close è uguale a 31 allora 0 o qualcosa di simile
Se Vuoi gestire l’errore, comunque devi dirmi cosa dovrebbe dare come risultato.
. Dovrebbe dare 0
Sull'’errore nome? ti dico quando guarderò il foglio.
. perfetto

Grazie 1000

sandro
openoffice 4.1.1
Avatar utente
unlucky83
Volontario
Volontario
Messaggi: 2355
Iscritto il: lunedì 7 gennaio 2013, 1:23
Località: Latina

Re: CONTA.SE

Messaggio da unlucky83 »

Forse le formule del post precedente ti fanno errore perché OpenOffice esige gli spazi prima e dopo la è commerciale &. Nelle formule che ho spalmato su 4celle di appoggio+cella finale sono stato attento a mettere gli spazi. A proposito riguarda la formula che ti da nome? e controlla se ci sono gli spazi prima e dopo &
 Editato: Prova con queste. Poi non ho altre idee. Ricorda di cambiare I con J. Sono tre formule per tre celle. 

Codice: Seleziona tutto

M104
=SE(INDIRETTO("Sales Volume.N" & 80 +(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N" & 80 +(MESE(M102)-1)*100);SE(INDIRETTO("Sales Volume.N" & 92 +(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N" & 92 +(MESE(M102)-1)*100);SE(INDIRETTO("Sales Volume.N" & 104 +(MESE(M102)-1)*100)<>"";INDIRETTO("Sales Volume.N" & 104 +(MESE(M102)-1)*100);0)))/
SE(Giorni.Mese(M102)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100 &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=close")
+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100  &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=chiuso")<>0;(Giorni.Mese(M102)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100 &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=close")
+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100  &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=chiuso"));1)

M105
=SE(MESE(M103)=MESE(M102);0;SE(INDIRETTO("Sales Volume.N" & 80 +(MESE(M103)-1)*100)<>"";INDIRETTO("Sales Volume.N" & 80+(MESE(M103)-1)*100);SE(INDIRETTO("Sales Volume.N" & 92+(MESE(M103)-1)*100)<>"";INDIRETTO("Sales Volume.N" & 92+(MESE(M103)-1)*100);SE(INDIRETTO("Sales Volume.N" & 104+(MESE(M103)-1)*100)<>"";INDIRETTO("Sales Volume.N" & 104+(MESE(M103)-1)*100);0)))/
SE(Giorni.Mese(M103)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M103)-1)*100 &":I"& 125+(MESE(M103)-1)*100+GIORNO(DATA(ANNO(M103);MESE(M103)+1;1)-1)-1);"=close")
+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M103)-1)*100 &":I"& 125+(MESE(M103)-1)*100+GIORNO(DATA(ANNO(M103);MESE(M103)+1;1)-1)-1);"=chiuso")<>0;(Giorni.Mese(M103)-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M103)-1)*100 &":I"& 125+(MESE(M103)-1)*100+GIORNO(DATA(ANNO(M103);MESE(M103)+1;1)-1)-1);"=close")
+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M103)-1)*100 &":I"& 125+(MESE(M103)-1)*100+GIORNO(DATA(ANNO(M103);MESE(M103)+1;1)-1)-1);"=chiuso"));1)

N104
=M104*SE(MESE(M103)=MESE(M102);(7-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100+GIORNO(M102)-1 &":I"& 125+(MESE(M103)-1)*100+GIORNO(M103)-1);"=close")+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100+GIORNO(M102)-1 &":I"& 125+(MESE(M103)-1)*100+GIORNO(M103)-1);"=chiuso"));(Data.Diff(M102;DATA(ANNO(M102);MESE(M102)+1;1);"d")-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100+GIORNO(M102)-1 &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=close")+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M102)-1)*100+GIORNO(M102)-1 &":I"& 125+(MESE(M102)-1)*100+GIORNO(DATA(ANNO(M102);MESE(M102)+1;1)-1)-1);"=chiuso")))
+M105*(Data.Diff(DATA(ANNO(M103);MESE(M103);1);M103+1;"d")-CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M103)-1)*100 & ":I" & 125+MESE(M103)-1)*100 + GIORNO(DATA(ANNO(M103);MESE(M103)+1;1)-1)-1);"=close")+CONTA.SE(INDIRETTO("Shifts.I"& 125+(MESE(M103)-1)*100 &":I"& 125+(MESE(M103)-1)*100 + GIORNO(DATA(ANNO(M103);MESE(M103)+1;1)-1)-1);"=chiuso")))
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
sandro merlino
Messaggi: 595
Iscritto il: giovedì 12 gennaio 2012, 20:33

Re: CONTA.SE

Messaggio da sandro merlino »

Ciao unluchy83
Nel file che allego, ho lasciato le formule precedenti in M104,M105,M108,M109.
Sono le formule che però non danno un corretto risultato se tutti i giorni del mese sono chiusi o chiuso

Per le formule nel messaggio precedente dove hai provato ad accorpare le funzioni per assecondare i miei MANAGERS ho messo
M104 in S104
M105 in S105
N104 in T104
Ho cambiato la colonna di shifts da I a J.
Il risultato di T104 risulta err: 508. Mi sembra che a livello di numero di caratteri in una cella non eccediamo perchè non la vedo tagliata.
L'unica cosa che noto è che verso la fine della formula alla quartultima riga c'è questo segno
~
che non ho mai capito cosa voglia dire

Sbaglio qualcosa ??? :ucrazy: :ucrazy: :ucrazy:

Non ho potuto fare i controlli su queste ultime tre formule.
Considera che l'optimum sarebbe utilizzare 3 celle . M104,M105, N104. Ma seno riusciamo ne usiamo di piu

Grazie

sandro
Allegati
format - Copia.ods
(217.08 KiB) Scaricato 96 volte
openoffice 4.1.1
Rispondi