collocazione eventi in un calendario

Su un foglio di Calc ho realizzato un calendario e vorrei che vi apparissero degli eventi fissati.

Ho quindi aperto il Foglio1 e creato una lista:
Col A: Descrizione Evento
Col B: Data Evento
Poi ho aperto dei fogli chiamati coi mesi (gen, feb, mar, ecc.) e ci ho messo dentro un calendario:
Col A: Date del Calendario

Ora vorrei far apparire gli eventi di $Foglio1.Bx nella corrispondente casella del $GENNAIO.Bx di $FEBBRAIO.Bx, ecc.

Ho provato a usare le funzioni cerca.vert e confronta, ma mi ci sono incartato alla grande e quindi vi chiedo se esista un modo semplice per realizzare quanto mi serve.

Grazie per l’aiuto che vorrete darmi.

Nel Foglio1 la colonna contenente le date deve trovarsi a sinistra di quella contenente le descrizioni degli eventi. Fatto questo, otterrai da CERCA.VERT il risultato voluto.

Il problema che evidenzi nel commento di risposta è semplicemente dovuto al fatto che CERCA.VERT non trova le date prive di eventi in Foglio1.

Hai due possibili soluzioni:

  1. in Foglio1 inserisci tutte le date, non solo quelle in cui registri degli eventi. Nelle date vuote apparirà lo zero, che puoi nascondere con un’opportuna formattazione condizionata.
  2. inglobi CERCA.VERT in una funzione SE.ERRORE (o SE.NON.DISP), in cui Valore sarà la tua funzione CERCA.VERT, mentre Valore alternativo sarà “”, cioè cella vuota.

Non è necessario complicarsi la vita con PIU.SE: CERCA.VERT ti dà l’evento (o zero) se trova la data, #N/D se non la trova (e in tal caso SE.ERRORE o SE.NON.DISP lo sostituiscono con la cella vuota). Noto inoltre che usi CERCA.VERT mettendo 1 come indice: in questo modo CERCA.VERT ti dice solo se c’è o no la data, e l’evento devi aggiungerlo con SE (o con PIU.SE, come hai fatto). Invece CERCA.VERT è strutturato apposta per riportare qualunque cosa ci sia nelle colonne a fianco, quando trova il criterio di ricerca nella prima colonna: basta mettere come indice 2 per riportare il dato della seconda colonna, 3, 4, …per le successive. Completa inoltre CERCA.VERT indicando 0 (zero) come orientamento.

In realtà ci ho provato, ma non sono riuscito a scrivere una formula che funzioni. Infatti, se anche funziona per il primo evento, poi non riesco ad applicarla sulle altre date giacché oltre all’errore #N/D, al massimo mi riporta la prima occorrenza. ES:

FOGLIO 1

B: ------------------------- C:

01.01 ---------------- evento 1

05.01 ---------------- evento 2

15.02 ---------------- evento 3

17.03 ---------------- evento 4

20.03 ---------------- evento 5

data n ------------ evento n

FOGLIO 2 - gennaio

01.01 → evento 1

02.01 → #N/D

03.01 → #N/D

04.01 → #N/D

05.01 → evento 1

06.01 → #N/D

La formula che ho impostato: =PIÙ.SE(CERCA.VERT(A1;$FOGLIO1.B1:Cx;1;);$FOGLIO1.C1;CERCA.VERT(A1;$FOGLIO1.B1:Cx;1;);$FOGLIO1.C2;CERCA.VERT(A1;$FOGLIO1.B1:Cx;1;);$FOGLIO1.C3;CERCA.VERT(A1;$FOGLIO1.B1:Cx;1;);$FOGLIO1.C4;CERCA.VERT(A1$FOGLIO1.B1:Cx;1;);$FOGLIO1.C5;“ERRORE”)

Formula errata in se, visto che nel caso mi pubblicherebbe un valore non esatto: ho bisogno di un aiuto massiccio

Grazie, R.C. su tuo suggerimento ho impostato la formula come segue:

=SE.ERRORE(CERCA.VERT(A1;$FOGLIO1.B1:C10;2;0);"")

Poi non ho fatto che copiarla nelle celle del FOGLIO2.

Naturalmente copiando la formula sulla colonna di gennaio si sono aggiornate sia il criterio di ricerca che la matrice e ho quindi dovuto rieditare la matrice per ciascun giorno del mese, ma per i mesi successivi (avendo ogni mese un foglio) è stato sufficiente copiare la colonna di gennaio e applicarla su quella dei mesi successivi.

Grazie ancora dell’aiuto!

Per “tener ferma” la matrice su tutte le righe del mese basta usare i “dollari”: $Foglio1.$b$1:$c$10.