Google Gruppi non supporta più i nuovi post o le nuove iscrizioni Usenet. I contenuti storici continuano a essere visibili.

[Quizzone di excel] Quesito 17

26 visualizzazioni
Passa al primo messaggio da leggere

plinius

da leggere,
28 mag 2011, 04:26:1728/05/11
a
Sintesi del regolamento:
1) chi risponde per primo con una soluzione che risolve guadagnerà 5
punti e dovrà postare entro due giorni un nuovo quesito
2) ulteriori 3 punti saranno assegnati alla soluzione più breve
---------------------------------------------------------------------------------­­
Per approfondire:
https://sites.google.com/site/e90e50/documento-plinius/quizzone-di-excel


_________________________________________________________________________________
Dal momento che sono ancora fuori casa, su un portatile rubacchiato e, soprattutto, con pochissimo tempo, dovrete scusarmi se non sarò tempestivo e puntuale.
Posterò il nuovo quesito oggi, 28 maggio, alle 13, in questo stesso 3d... risponderò quando posso (sigh!)
A dopo...

plinius

da leggere,
28 mag 2011, 07:06:1928/05/11
a
In A1 e B1 le intestazioni: rispettivamente "N" e "Cont".

In colonna A, a partire da A2 una serie di numeri naturali, 0 (zeri) inclusi.

In C1 un intero positivo, per esempio 3

Inserire in B2 una formula che, trascinata poi in basso realizzi un contatore "anomalo" che si comporti come segue:
- se in colonna A c'è 0, ignora la numerazione e lascia la cella vuota
- se in colonna A c'è un qualunque altro numero inserisce un numero progressivo (a partire da 0) che, però, non cresce se non dopo essersi ripetuto per il numero di volte indicato in C1

Per esempio:
N Cont 3
3 0
0
0
4 0
5 0
6 1
0
1 1
7 1
0
2 2
5 2
6 2
0
2 3
1 3
1 3
0
5 4
8 4
4 4
3 5

Ovvio che, a formule inserite, cambiando il valore in C1 la numerazione debba adeguarsiautomaticamente.
E, dunque, diventi, per esempio:

N Cont 2
3 0
0
0
4 0
5 1
6 1
0
1 2
7 2
0
2 3
5 3
6 4
0
2 4
1 5
1 5
0
5 6
8 6
4 7
3 7

Se in C1 è presente il valore 1 la numerazione non si ripete e assume la progressione: 0,1,2,3,4,5,6,....
Inserendo invece in C1 un valore <= 0 la numerazione non ha ripetizioni ed inizia da 1 piuttosto che da 0 (diventa, cioè, un contatore "normale").

N Cont 0
3 1
0
0
4 2
5 3
6 4
0
1 5
7 6
0
2 7
5 8
6 9
0
2 10
1 11
1 12
0
5 13
8 14
4 15
3 16

Buon divertimento!
E. :-)

paoloard

da leggere,
28 mag 2011, 10:51:1728/05/11
a
"plinius" ha scritto nel messaggio
news:89492849-8382-47a5...@glegroupsg2000goo.googlegroups.com...

In A1 e B1 le intestazioni: rispettivamente "N" e "Cont".

In colonna A, a partire da A2 una serie di numeri naturali, 0 (zeri)
inclusi.

In C1 un intero positivo, per esempio 3

Inserire in B2 una formula che, trascinata poi in basso realizzi un
contatore "anomalo" che si comporti come segue:
- se in colonna A c'è 0, ignora la numerazione e lascia la cella vuota
- se in colonna A c'è un qualunque altro numero inserisce un numero
progressivo (a partire da 0) che, però, non cresce se non dopo essersi
ripetuto per il numero di volte indicato in C1

cut


Ovvio che, a formule inserite, cambiando il valore in C1 la numerazione
debba adeguarsiautomaticamente.
E, dunque, diventi, per esempio:

cut


Se in C1 è presente il valore 1 la numerazione non si ripete e assume la
progressione: 0,1,2,3,4,5,6,....
Inserendo invece in C1 un valore <= 0 la numerazione non ha ripetizioni ed
inizia da 1 piuttosto che da 0 (diventa, cioè, un contatore "normale").

----------------------------------------------------------------

in B2
=SE(A2=0;"";SE($C$1<=0;CONTA.SE($A$1:A1;"<>0");SE($C$1=1;CONTA.SE($A$1:A1;"<>0")-1;INT(((RIF.RIGA($A1)-CONTA.SE($A$1:$A1;"=0"))-1)/$C$1))))
da copiare in basso

ciao paoloard
http://www.riolab.org

paoloard

da leggere,
28 mag 2011, 11:12:2428/05/11
a
"paoloard" ha scritto nel messaggio news:irr26o$2ob$1...@dont-email.me...

cut
----------------------------------------------------------------

in B2
=SE(A2=0;"";SE($C$1<=0;CONTA.SE($A$1:A1;"<>0");SE($C$1=1;CONTA.SE($A$1:A1;"<>0")-1;INT(((RIF.RIGA($A1)-CONTA.SE($A$1:$A1;"=0"))-1)/$C$1))))
da copiare in basso

-----------------------------------------------------------

le taglio le orecchie:

=SE(A2=0;"";SE($C$1<=0;CONTA.SE($A$1:A1;"<>0")-(SE($C$1<=0;0;1));INT(((RIF.RIGA($A1)-CONTA.SE($A$1:$A1;"=0"))-1)/$C$1)))

ciao paoloard
http://www.riolab.org

paoloard

da leggere,
28 mag 2011, 11:16:5628/05/11
a
"paoloard" ha scritto nel messaggio news:irr3ea$ap0$1...@dont-email.me...

cut
----------------------------------------------------------------

-----------------------------------------------------------

le taglio le orecchie:

ciao paoloard
http://www.riolab.org
-----------------------------------------------------------------------

togliendo un po' di $ dato che la formula resta in colonna B:
=SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0")-(SE(C$1<=0;0;1));INT(((RIF.RIGA($A1)-CONTA.SE(A$1:A1;"=0"))-1)/C$1)))

ora basta! le mie meningi sono state ormai spremute del tutto :-)

ciao paoloard
http://www.riolab.org

paoloard

da leggere,
28 mag 2011, 11:56:0428/05/11
a
"paoloard" ha scritto nel messaggio news:irr3mq$cbh$1...@dont-email.me...

cut
----------------------------------------------------------------

-----------------------------------------------------------

le taglio le orecchie:

ciao paoloard
http://www.riolab.org
---------------------------------------------------------
acc....... ultima riduzione (lo giuro)

=SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0");INT(((RIF.RIGA($A1)-CONTA.SE(A$1:A1;"=0"))-1)/C$1)))

ciao paoloard
http://www.riolab.org

Andrea.9

da leggere,
28 mag 2011, 12:36:3028/05/11
a
On 28 Mag, 17:56, "paoloard" <xxp...@alice.it> wrote:
> "paoloard"  ha scritto nel messaggionews:irr3mq$cbh$1...@dont-email.me...
>
> "paoloard"  ha scritto nel messaggionews:irr3ea$ap0$1...@dont-email.me...
>
> "paoloard"  ha scritto nel messaggionews:irr26o$2ob$1...@dont-email.me...

>
> cut
> ----------------------------------------------------------------
>
> in B2
> =SE(A2=0;"";SE($C$1<=0;CONTA.SE($A$1:A1;"<>0");SE($C$1=1;CONTA.SE($A$1:A1;"­<>0")-1;INT(((RIF.RIGA($A1)-CONTA.SE($A$1:$A1;"=0"))-1)/$C$1))))
> da copiare in basso
>
> -----------------------------------------------------------
>
> le taglio le orecchie:
>
> =SE(A2=0;"";SE($C$1<=0;CONTA.SE($A$1:A1;"<>0")-(SE($C$1<=0;0;1));INT(((RIF.­RIGA($A1)-CONTA.SE($A$1:$A1;"=0"))-1)/$C$1)))
>
> ciao paoloardhttp://www.riolab.org

> -----------------------------------------------------------------------
>
> togliendo un po' di $ dato che la formula resta in colonna B:
> =SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0")-(SE(C$1<=0;0;1));INT(((RIF.RIG­A($A1)-CONTA.SE(A$1:A1;"=0"))-1)/C$1)))

>
> ora basta! le mie meningi sono state ormai spremute del tutto :-)
>
> ciao paoloardhttp://www.riolab.org

> ---------------------------------------------------------
> acc....... ultima riduzione (lo giuro)
>
> =SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0");INT(((RIF.RIGA($A1)-CONTA.SE(A­$1:A1;"=0"))-1)/C$1)))
>
> ciao paoloardhttp://www.riolab.org

per un dollaro di troppo ......
=SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0");INT(((RIF.RIGA(A1)-
CONTA.SE(A$1:A1;"=0"))-1)/C$1)))
andrea

paoloard

da leggere,
28 mag 2011, 13:35:0928/05/11
a
"Andrea.9" ha scritto nel messaggio
news:789128b0-96d9-4ea9...@g24g2000vbz.googlegroups.com...

cut


> ---------------------------------------------------------
> acc....... ultima riduzione (lo giuro)
>

> =SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0");INT(((RIF.RIGA($A1)-CONTA.SE(Aュ$1:A1;"=0"))-1)/C$1)))
>
> ciao paoloardhttp://www.riolab.org

per un dollaro di troppo ......
=SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0");INT(((RIF.RIGA(A1)-
CONTA.SE(A$1:A1;"=0"))-1)/C$1)))
andrea

-------------------------------------------------

ah birbante! :-)
era un dollaro d'onore!

ciao paoloard
http://www.riolab.org


paoloard

da leggere,
28 mag 2011, 13:51:0428/05/11
a
"paoloard" ha scritto nel messaggio news:irrbq0$v48$1...@dont-email.me...

"Andrea.9" ha scritto nel messaggio
news:789128b0-96d9-4ea9...@g24g2000vbz.googlegroups.com...

cut
> ---------------------------------------------------------
> acc....... ultima riduzione (lo giuro)
>
> =SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0");INT(((RIF.RIGA($A1)-CONTA.SE(Aュ$1:A1;"=0"))-1)/C$1)))
>
> ciao paoloardhttp://www.riolab.org

per un dollaro di troppo ......
=SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0");INT(((RIF.RIGA(A1)-
CONTA.SE(A$1:A1;"=0"))-1)/C$1)))
andrea
-------------------------------------------------

eh eh ....per un minore di troppo:
=SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;">0");INT(((RIF.RIGA(A1)-CONTA.SE(A$1:A1;"=0"))-1)/C$1)))

ciao paoloard
http://www.riolab.org

paoloard

da leggere,
28 mag 2011, 13:57:3228/05/11
a
"paoloard" ha scritto nel messaggio news:irrcnr$52l$1...@dont-email.me...

ciao paoloard
http://www.riolab.org
----------------------------------------------------

correggo:

=SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$2:A2;">0");INT(((RIF.RIGA(A1)-CONTA.SE(A$2:A2;"=0"))-1)/C$1)))

ciao paoloard
http://www.riolab.org

plinius

da leggere,
28 mag 2011, 16:03:2428/05/11
a
Eccomi, scusate il ritardo!

Bravo Paolo, la formula funziona perfettamente e raggiunge tutte le finalità richieste: 5 punti meritatissimi e, per ora, anche i 3 della formula breve... per ora eh!! :-)

Ciao,
E. ;-)

Andrea.9

da leggere,
28 mag 2011, 18:01:2928/05/11
a
On 28 Mag, 19:57, "paoloard" <xxp...@alice.it> wrote:
> "paoloard"  ha scritto nel messaggionews:irrcnr$52l$1...@dont-email.me...
>
> "paoloard"  ha scritto nel messaggionews:irrbq0$v48$1...@dont-email.me...
>
> "Andrea.9"  ha scritto nel messaggionews:789128b0-96d9-4ea9...@g24g2000vbz.googlegroups.com...

>
> cut
>
> > ---------------------------------------------------------
> > acc....... ultima riduzione (lo giuro)
>
> > =SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0");INT(((RIF.RIGA($A1)-CONTA.SE(A­­$1:A1;"=0"))-1)/C$1)))

>
> > ciao paoloardhttp://www.riolab.org
>
> per un dollaro di troppo ......
> =SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;"<>0");INT(((RIF.RIGA(A1)-
> CONTA.SE(A$1:A1;"=0"))-1)/C$1)))
> andrea
> -------------------------------------------------
>
> eh eh ....per un minore di troppo:
> =SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$1:A1;">0");INT(((RIF.RIGA(A1)-CONTA.SE(A$1­:A1;"=0"))-1)/C$1)))
>
> ciao paoloardhttp://www.riolab.org

> ----------------------------------------------------
>
> correggo:
>
> =SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$2:A2;">0");INT(((RIF.RIGA(A1)-CONTA.SE(A$2­:A2;"=0"))-1)/C$1)))
>
> ciao paoloardhttp://www.riolab.org

terrribbbbbileeeee....
=SE(A2=0;"";SE(C$1<=0;CONTA.SE(A$2:A2;">0");INT(((RIF.RIGA()-CONTA.SE(A
$2:A2;"=0"))-2)/C$1)))
andrea

Andrea.9

da leggere,
28 mag 2011, 18:13:3928/05/11
a
> andrea- Nascondi testo citato
>
> - Mostra testo citato -

ancora uno .....
=SE(A2=0;"";SE(C$1<1;CONTA.SE(A$2:A2;">0");INT(((RIF.RIGA()-CONTA.SE(A

plinius

da leggere,
28 mag 2011, 18:15:5328/05/11
a
Bel colpo Andrea, hai soffiato i 3 punti a Paolo, ma ci sono altri colpi da assestare eh... attenzione!! :-)

r

da leggere,
28 mag 2011, 18:16:2928/05/11
a
On 28 Mag, 22:03, plinius <punto.lin...@libero.it> wrote:
> Eccomi, scusate il ritardo!
>
> Bravo Paolo, la formula funziona perfettamente e raggiunge tutte le finalità richieste: 5 punti meritatissimi e, per ora, anche i 3 della formula breve... per ora eh!! :-)


ci provo per i 3 punti:
=SE(A2;INT((RIF.RIGA(A1)-CONTA.SE(A$2:A2;)-(C$1>0))/SE(C$1>0;C
$1;1));"")

saluti
r

Andrea.9

da leggere,
28 mag 2011, 18:22:0628/05/11
a

è una cosa vergognosa ;-)
noi qui a scannarci per 1 carattere e lui arriva e ne toglie 19 ......
...... INGORDO !!!

r

da leggere,
28 mag 2011, 18:41:0528/05/11
a
On 29 Mag, 00:22, "Andrea.9" <a.novelli-...@dappolonia.it> wrote:

> è una cosa vergognosa ;-)
> noi qui a scannarci per 1 carattere e lui arriva e ne toglie 19 ......
> ...... INGORDO !!!

ma LOL! :-)
però plinius non mi fa mica rilassare ... ha sempre qualcosa in canna!
vediamo cosa dice ...
ciao
r

plinius

da leggere,
28 mag 2011, 18:46:2828/05/11
a
Bel colpo Robby, da par tuo! ;-)

3 punti aggiudicati a te!!

___________________________
sempre per ora eh! :-)))))

r

da leggere,
28 mag 2011, 18:49:2128/05/11
a

ecco ... vedi andrea :-)
vado a letto anche se ora non riuscirò a dormire :-)
r

plinius

da leggere,
28 mag 2011, 18:56:2628/05/11
a
Ecco, non dormire ed usa proficuamente il tuo tempo eh!! :-)

'notteeeeee
E. :-D

Andrea.9

da leggere,
28 mag 2011, 19:01:3428/05/11
a

no no, non si accorcia nemmeno con winzip :-)
andrea

plinius

da leggere,
28 mag 2011, 19:08:2228/05/11
a
Andrea, non si accorcia solo quando ci rifletti di giorno.
Dalle 3 fino all'alba: quelle sono le ore migliori...
provare per credere!! :-))

r

da leggere,
29 mag 2011, 10:43:1029/05/11
a

al volo ... dopo nottata in bianco :-)

=SE(A2;INT((SOMMA(--(A$2:A2<>0))-(C$1>0))/SE(C$1>0;C$1;1));"")

scappo a votare ...
r

r

da leggere,
29 mag 2011, 10:56:2729/05/11
a

aspetta ... -1
=SE(A2;INT((SOMMA(1-(A$2:A2=0))-(C$1>0))/SE(C$1>0;C$1;1));"")

plinius fermamiiiii !!!!! devo votareeeee ... posso andareeee?
:-)

r

da leggere,
29 mag 2011, 11:00:4729/05/11
a

ovviamente è da confermare con ctrl+maiusc+invio!
col conta.se è di qualche carattere più lunga ...
pisapia arrrivoooo :-)

paoloard

da leggere,
29 mag 2011, 12:38:2029/05/11
a
"r" ha scritto nel messaggio
news:8ceb83c7-6ce4-45df...@l18g2000yql.googlegroups.com...

cut>


> aspetta ... -1
> =SE(A2;INT((SOMMA(1-(A$2:A2=0))-(C$1>0))/SE(C$1>0;C$1;1));"")
>
> plinius fermamiiiii !!!!! devo votareeeee ... posso andareeee?
> :-)

ovviamente è da confermare con ctrl+maiusc+invio!
col conta.se è di qualche carattere più lunga ...
pisapia arrrivoooo :-)

--------------------------------------------------

sorprendente! non c'è limite alle tue eruzioni! :-0

ciao paoloard
http://www.riolab.org

plinius

da leggere,
29 mag 2011, 15:33:3829/05/11
a
Per il tuo contributo alla de(mo)rattizzazione di Milano, 3333 punti aggiuntivi: quelli meglio meritati della tua carriera ;-))

Per la formula invece qualcosina si può ancora tagliare eh!

Ciao,
E.

r

da leggere,
29 mag 2011, 18:19:2329/05/11
a

=SE(A2;INT(SOMMA(1-(A$2:A2=0);-(C$1>0))/SE(C$1>0;C$1;1));"")

ma è solo un -1 ... beh chissenefrega tanto ho 3333 punti di bonus :-)

dai dimmi quanto ancora si può risparmiare ... così non dormo manco
sta notte! :-)
r

plinius

da leggere,
29 mag 2011, 18:59:1329/05/11
a
Ecco, io darei una formula che brevissima non è (73), ma segue una logica diversa che può permettere di accorciare un po' più dell'altra.

=SE(A2;SE(CONTA.SE(B$1:B1;MAX(B$1:B1))<C$1;MAX(B$1:B1);MAX(B$1:B1)+1);"")

'notteeee,
E. ;-)

r

da leggere,
30 mag 2011, 04:30:5830/05/11
a

vedere tutti quei max mi ha fatto venire in mente come togliere quel
brutto se a denominatore ... poi qualche carattere ancora qua e la ...
mantengo la logica di prima ... ma tagliuzzo un bel po':
=SE(A2;INT(-SOMMA(-(A$2:A2<>0);C$1>0)/MAX(C$1;1));"")
così sono altri -7

cosa dici?
r

paoloard

da leggere,
30 mag 2011, 04:34:2830/05/11
a
"r" ha scritto nel messaggio
news:7bb686be-22dd-44d3...@d28g2000yqf.googlegroups.com...

On 30 Mag, 00:59, plinius <punto.lin...@libero.it> wrote:

> Ecco, io darei una formula che brevissima non č (73), ma segue una logica
> diversa che puň permettere di accorciare un po' piů dell'altra.


>
> =SE(A2;SE(CONTA.SE(B$1:B1;MAX(B$1:B1))<C$1;MAX(B$1:B1);MAX(B$1:B1)+1);"")
>
> 'notteeee,
> E. ;-)

vedere tutti quei max mi ha fatto venire in mente come togliere quel
brutto se a denominatore ... poi qualche carattere ancora qua e la ...
mantengo la logica di prima ... ma tagliuzzo un bel po':
=SE(A2;INT(-SOMMA(-(A$2:A2<>0);C$1>0)/MAX(C$1;1));"")

cosě sono altri -7

cosa dici?
r
---------------------------------------

Sempre piů incredibile!! Ai limiti dell'impossibile! :-)
Sei l'indiscusso aggiudicatario dei 3 punti. Salvo sorprese dell'ultimo
minuto :-)

ciao paoloard
http://www.riolab.org

plinius

da leggere,
30 mag 2011, 04:54:2630/05/11
a


Il giorno lunedì 30 maggio 2011 10:30:58 UTC+2, r ha scritto:
> On 30 Mag, 00:59, plinius


Perfetta r!!
53 caratteri... largamente migliore di quella che avevo io (di 58):

=SE(A2;MAX(F$1:F1)+(CONTA.SE(F$1:F1;MAX(F$1:F1))>=C$1);"")

Mai visti punti così ben meritati, bravissimo!!

Ciao,
E. ;-))

r

da leggere,
30 mag 2011, 05:29:4630/05/11
a
On 30 Mag, 10:34, "paoloard" <xxp...@alice.it> wrote:
> "r"  ha scritto nel messaggionews:7bb686be-22dd-44d3...@d28g2000yqf.googlegroups.com...

>
> On 30 Mag, 00:59, plinius <punto.lin...@libero.it> wrote:
>
> > Ecco, io darei una formula che brevissima non è (73), ma segue una logica
> > diversa che può permettere di accorciare un po' più dell'altra.

>
> > =SE(A2;SE(CONTA.SE(B$1:B1;MAX(B$1:B1))<C$1;MAX(B$1:B1);MAX(B$1:B1)+1);"")
>
> > 'notteeee,
> > E.    ;-)
>
> vedere tutti quei max mi ha fatto venire in mente come togliere quel
> brutto se a denominatore ... poi qualche carattere ancora qua e la ...
> mantengo la logica di prima ... ma tagliuzzo un bel po':
> =SE(A2;INT(-SOMMA(-(A$2:A2<>0);C$1>0)/MAX(C$1;1));"")
> così sono altri -7
>
> cosa dici?
> r
> ---------------------------------------
>
> Sempre più incredibile!! Ai limiti dell'impossibile! :-)

> Sei l'indiscusso aggiudicatario dei 3 punti. Salvo sorprese dell'ultimo
> minuto :-)
>
> ciao paoloardhttp://www.riolab.org

beh credo che con questa logica il risicabile sia stato risicato ...
però vediamo cosa si inventa E. ... per 3 punti è capace di ogni
cosa :-)
r

paoloard

da leggere,
30 mag 2011, 06:02:3630/05/11
a
"plinius" ha scritto nel messaggio
news:62d36f23-d981-4cc0...@glegroupsg2000goo.googlegroups.com...

Ciao,
E. ;-))
--------------------------------

Bene, direi che a questo punto i 3 punti sono definitivamente di Roby.

-- fai sapere
ciao paoloard
http://www.riolab.org

0 nuovi messaggi