Vuoi spuntare le presenze in Excel per Mac senza dover trascinare oggetti “fluttuanti” del gruppo Sviluppo? Le nuove caselle di controllo in‑cella trasformano ogni cella in un booleano nativo (TRUE/FALSE), perfetto per filtri, tabelle e formule. Ecco come attivarle e usarle per un foglio presenze professionale.
Perché le caselle di controllo in‑cella cambiano il tuo foglio presenze
Le caselle di controllo tradizionali (Developer > Controlli modulo) sono oggetti grafici “sopra” il foglio: vanno allineati, possono spostarsi con filtri e ordinamenti e richiedono un collegamento cella esterno per restituire TRUE/FALSE. Le nuove checkbox in‑cella invece sono parte del valore della cella: clicchi e ottieni subito TRUE o FALSE nello stesso indirizzo. Questo significa:
- Filtri e tabelle che funzionano senza trucchi: filtri per TRUE/FALSE, Subtotali e Visualizzazioni Pagine tutto stabile.
- Formule più semplici: niente riferimenti a celle nascoste, niente collegamenti da gestire; basta
COUNTIF
,COUNTIFS
o funzioni dinamiche. - Prestazioni migliori su elenchi lunghi: meno oggetti, meno ridisegno.
- Esperienza coerente: valori booleani nativi, compatibili con Power Query, Power Pivot e (quando serve) esportazioni CSV/JSON.
Disponibilità e requisiti
Le caselle di controllo in‑cella sono state introdotte nel canale Insider (Beta) nell’ottobre 2023 e, dal 31 luglio 2024, sono disponibili anche nel Current Channel di Microsoft 365 su Windows e Mac. Se non le vedi, è probabile che tu debba:
- Entrare nel programma Office Insider e selezionare il Beta Channel (se vuoi provare da subito le novità), oppure
- Restare su Current Channel e semplicemente installare l’ultimo aggiornamento di Microsoft 365.
Nota: la funzionalità è disponibile per Excel di Microsoft 365. Versioni perpetue (ad es. 2021 LTSC) potrebbero non includerla.
Procedura passo‑passo (Mac)
Segui questi passaggi per attivare e usare le caselle di controllo in‑cella sul tuo Mac.
- In Excel vai su Aiuto › Controlla aggiornamenti per aprire Microsoft AutoUpdate.
- In Avanzate scegli Beta Channel (se vuoi accedere subito alle novità) oppure conferma Current Channel se la funzione risulta già disponibile.
- Installa l’ultima build disponibile.
- Torna al foglio, seleziona il range desiderato e vai su Inserisci › Casella di controllo: ogni cella selezionata diventa un booleano
TRUE
/FALSE
e la casella appare centrata automaticamente.
Creare un foglio presenze robusto con caselle in‑cella
Vediamo come progettare un registro presenze semplice da usare e facile da mantenere.
Struttura consigliata del foglio
Una struttura classica tiene i giorni in riga e le persone in colonna. In alternativa puoi ribaltare lo schema: l’importante è mantenere coerenza e usare una Tabella di Excel per beneficiare di filtri e riferimenti strutturati.
Data | Mario | Giulia | Samir | Tot. presenti | Note |
---|---|---|---|---|---|
01/09/2024 | (checkbox) | (checkbox) | (checkbox) | =COUNTIF(B2:D2;TRUE) | — |
02/09/2024 | (checkbox) | (checkbox) | (checkbox) | =COUNTIF(B3:D3;TRUE) | — |
Consiglio: seleziona l’intera area (date + persone), premi ⌘ T e conferma “La tabella ha intestazioni”. Così potrai filtrare per data, persona, settimana, ecc. e usare riferimenti del tipo Table1[Giulia]
.
Inserire le caselle di controllo
- Compila prima le date con Riempimento (trascina l’angolo della cella con la data iniziale).
- Seleziona il blocco di celle destinato alle presenze (es.
B2:D32
). - Vai su Inserisci › Casella di controllo. Excel popolerà il range con checkbox in‑cella.
- Prova a fare clic su alcune celle: il valore cambia tra
TRUE
eFALSE
. Con la tabella potrai filtrare “Presente = TRUE”.
Formule utili per conteggi e riepiloghi
- Conteggio presenti per riga (giorno):
=COUNTIF(B2:D2;TRUE)
- Conteggio assenti per riga:
=COUNTIF(B2:D2;FALSE)
- Totale presenze per persona (colonna):
=COUNTIF(Table1[Giulia];TRUE)
- Totale assenze per persona:
=COUNTIF(Table1[Giulia];FALSE)
- % presenza per persona:
=COUNTIF(Table1[Giulia];TRUE) / COUNTA(Table1[Data])
Con le funzioni dinamiche puoi calcolare totali per tutte le persone in un colpo solo:
=BYCOL(Table1[[#Dati] [Mario]:[Samir]];LAMBDA(col;COUNTIF(col;TRUE)))
Restituisce un array con il numero di presenze per ciascuna colonna-persona.
Raggruppare per settimana, mese o reparto
Se nel foglio hai una colonna Mese (es. =TEXT([@Data];"mmm-aaaa")
) o Settimana ISO (es. =ISOWEEKNUM([@Data])
), puoi ottenere riepiloghi con PIVOT
o formule:
- Per mese e persona con Pivot: Righe=Mese, Colonne=Persona, Valori=Somma di Presente (dove Presente vale 1 se TRUE, 0 se FALSE). Per trasformare
TRUE
/FALSE
in 1/0 aggiungi una colonna PresenteNum con=--[@Mario]
e copia per le altre persone, oppure usaSUMPRODUCT
nelle formule. - Con formule:
=SUMPRODUCT(--(Table1[Mese]=G1);--(Table1[Giulia]=TRUE))
conteggia le presenze di Giulia nel mese indicato inG1
.
Colorare automaticamente le presenze/assenze
- Seleziona il blocco con le checkbox.
- Vai su Home › Formattazione condizionale › Nuova regola.
- Regola 1: Formato solo celle che contengono → Valore della cella
uguale a
TRUE
→ scegli un riempimento verde chiaro. - Regola 2: stessa logica per
FALSE
→ riempimento rosso chiaro.
In questo modo, quando clicchi una casella, la cella si colora automaticamente: ottimo per la leggibilità in riunione o in stampa.
Proteggere il foglio e limitare gli errori
Le caselle in‑cella si comportano come valori. Se il foglio contiene formule o colonne di servizio, puoi proteggere l’area mantenendo modificabili solo le presenze:
- Seleziona il blocco presenze → Formato celle › Protezione → togli “Bloccata”.
- Rimetti “Bloccata” su colonne con formule.
- Rivedi → Proteggi foglio (imposta password se serve) e consenti “Seleziona celle sbloccate”.
Così gli utenti potranno solo spuntare le caselle, senza toccare formule o intestazioni.
Alternative se non puoi aggiornare
Se l’aggiornamento non è un’opzione immediata, ecco tre soluzioni affidabili con pro e contro.
Opzione | Come si fa | Vantaggi / Limiti |
---|---|---|
CheckBox “Modulo” (Developer) | Inserisci casella → Formato controllo → Collegamento cella alla cella stessa o adiacente. | Funziona in ogni versione. Limiti: oggetti fluttuanti da allineare; possono uscire dal flusso con ordina/filtra; gestione onerosa su grandi elenchi. |
Convalida dati con simboli ✓/— | Convalida → Elenco con voci “✓” e vuoto “—” (o solo “✓”). Aggiungi formattazione condizionale per colori e, se vuoi, una colonna di supporto con =LEN(cella)>0 per avere TRUE/FALSE. | Semplice, nessun oggetto grafico. Limiti: non restituisce un booleano nativo senza colonna di supporto; possibile variabilità dei caratteri su font diversi. |
TRUE/FALSE + formato personalizzato | Scrivi TRUE /FALSE e applica formato personalizzato (es. [=TRUE]"✔";[=FALSE]""; ). In alternativa, per immissione testuale: ;;;"✔" (mostra un segno per qualsiasi testo). | Pieno supporto a filtri e tabelle, nessun oggetto. Limiti: richiede disciplina in immissione; se usi il formato testuale non ottieni un booleano nativo. |
Suggerimenti pratici per il foglio presenze
- Conta rapidamente:
=COUNTIF(Intervallo;TRUE)
per presenti e=COUNTIF(Intervallo;FALSE)
per assenti. - Trasforma l’area in Tabella (⌘ T) per filtri, stili e riferimenti strutturati.
- Condividi il file solo con utenti che dispongono della stessa versione; in caso contrario, salva una copia con le checkbox “Modulo” per retro‑compatibilità.
- Tastiera (accessibilità): seleziona la cella e premi Barra spaziatrice per alternare TRUE/FALSE senza mouse.
- Riempimento: seleziona una cella con TRUE e trascina l’angolo per “propagare” rapidamente (poi regola i giorni non lavorativi).
- Festivi: crea un elenco di festività e usa
VLOOKUP
oXLOOKUP
per colorare automaticamente le righe festivi. - Mezze giornate: le checkbox sono binarie; usa una colonna appoggio (es. “Ore”) con elenco a discesa 0 / 0,5 / 1 per casi particolari.
- Stampa pulita: visualizza la colonna “Tot. presenti” a destra e attiva Ripeti riga superiore nelle impostazioni di stampa.
Esempi pronti di formule (copiabili)
Totali per giorno
=COUNTIF(Table1[@[Mario]:[Samir]];TRUE)
Totali per persona su tutto il mese
=COUNTIF(Table1[Giulia];TRUE)
Riepilogo dinamico per ogni persona (tutto il blocco)
=BYCOL(Table1[[#Dati] [Mario]:[Samir]];LAMBDA(col;COUNTIF(col;TRUE)))
Conteggio presenze solo in giorni lavorativi
Aggiungi una colonna GiornoSettimana con =WEEKDAY([@Data];2)
(1=lunedì … 7=domenica), poi:
=SUMPRODUCT(--(Table1[GiornoSettimana]<=5);--(Table1[Giulia]=TRUE))
% presenza per reparto (con colonna “Reparto”)
=SUMPRODUCT(--(Table1[Reparto]=H1);--(Table1[Giulia]=TRUE))
/ SUMPRODUCT(--(Table1[Reparto]=H1))
Confronto: caselle in‑cella vs controlli “fluttuanti”
Caratteristica | In‑cella | Controllo Modulo (Developer) |
---|---|---|
Valore della cella | TRUE/FALSE nativo nella cella | Richiede collegamento a cella esterna |
Ordinamento/Filtri | Stabile, niente disallineamenti | Rischio di sfasamento degli oggetti |
Prestazioni su grandi elenchi | Ottime (niente oggetti grafici) | Più lenti con migliaia di checkbox |
Facilità di copia/riempimento | Come normali celle | Oggetti da duplicare/posizionare |
Compatibilità con versioni vecchie | Necessita build recente di 365 | Compatibile quasi ovunque |
Best practice di progettazione
- Nomi di intervallo: assegna un nome al blocco presenze (es. PresenzeMese) per rendere le formule leggibili:
=COUNTIF(PresenzeMese;TRUE)
. - Tabella unica per anno: aggiungi una colonna Mese o Periodo invece di un foglio per mese; i filtri faranno il resto.
- Convalida su giorni validi: genera le date solo per giorni lavorativi con
WORKDAY.INTL
e nascondi i fine settimana con un filtro rapido. - Audit: usa una colonna “Ultima modifica” con
=NOW()
(ricalcolo manuale) o registra le modifiche via Power Query quando importi dati storici.
Domande frequenti
Posso usare le caselle in‑cella dentro una Tabella?
Sì, funzionano molto bene: ordinamenti e filtri non rompono il layout perché il TRUE/FALSE è nella cella stessa.
Come faccio a spuntare velocemente tante caselle?
Seleziona un blocco di celle e premi Spazio per alternare. Oppure usa il trascinamento del quadratino di riempimento da una cella TRUE.
Le caselle in‑cella supportano un terzo stato (N/D)?
No, sono binarie. Per i casi “non valutato” usa una colonna appoggio con elenco a discesa (— / 0,5 / 1) o applica una convenzione (FALSE = assente, vuoto = non rilevato) e regole di formattazione condizionale distinte.
Cosa vede chi apre il file con una versione che non supporta le caselle in‑cella?
Per evitare sorprese, condividi il file con utenti sullo stesso canale/versione. In alternativa, mantieni una copia “compatibile” che utilizza CheckBox Modulo con collegamenti di cella.
Procedura lampo: dal nulla al foglio presenze pronto
- Crea intestazioni: Data, Nomi dei collaboratori, Totali e Note.
- Seleziona l’area “persone × giorni”.
- Inserisci › Casella di controllo.
- Trasforma in Tabella (⌘ T).
- Aggiungi Tot. presenti con
=COUNTIF([@[Mario]:[Samir]];TRUE)
. - Imposta Formattazione condizionale per TRUE (verde) e FALSE (rosso).
- Proteggi il foglio lasciando sbloccate solo le celle con le checkbox.
Risoluzione problemi
- Non trovo “Casella di controllo” nel menu Inserisci: aggiorna Excel come indicato e verifica di essere nel canale Current o Beta con una build recente.
- Le caselle “spariscono” dopo un ordinamento: probabilmente stai usando i Controlli Modulo. Con le caselle in‑cella questo non accade; valuta la migrazione.
- Le formule non conteggiano: controlla che il range contenga davvero TRUE/FALSE (booleani) e non testo “TRUE”/“FALSE”. Se necessario, converti con
=--cella
. - Separatore di argomenti: se il tuo Excel usa la virgola, sostituisci
;
con,
nelle formule.
Migrare da controlli “fluttuanti” a caselle in‑cella
- Individua le celle di collegamento dei vecchi controlli (spesso nascoste).
- Copia i valori (TRUE/FALSE) in un’area temporanea.
- Elimina i controlli Modulo (Selezione oggetti → Canc).
- Inserisci le nuove caselle in‑cella nel blocco principale.
- Incolla i valori salvati (TRUE/FALSE) sopra le nuove celle per ripristinare lo stato.
Template concettuale per presenze mensili
Imposta queste colonne, poi popola il blocco checkbox “persone × giorni”.
Colonna | Descrizione | Esempio/Formula |
---|---|---|
Data | Giorno del mese | Serie dal 1° al 31; facoltativo: =WORKDAY.INTL(DataInizio;Riga-1;"0000011") per soli feriali |
Mese | Chiave di riepilogo | =TEXT([@Data];"mmm-aaaa") |
Settimana ISO | Analisi settimanale | =ISOWEEKNUM([@Data]) |
Mario..Samir | Blocchi di checkbox in‑cella | Inserisci → Casella di controllo |
Tot. presenti | Conteggio per riga | =COUNTIF([@[Mario]:[Samir]];TRUE) |
Note | Eventuali eccezioni | Testo libero, con convalida opzionale |
Conclusione
Con l’aggiornamento al canale corretto, le caselle di spunta in‑cella rendono il foglio presenze di Excel per Mac più semplice da mantenere, filtrare e analizzare. Niente più controlli fluttuanti da allineare: il valore TRUE/FALSE
vive nella cella, le formule diventano immediate e la condivisione con il team, se tutti sono sulla stessa versione, è finalmente priva di sorprese. Se non puoi aggiornare subito, le alternative proposte garantiscono comunque risultati solidi. Ma quando adotterai le checkbox native, capirai subito il salto di qualità in chiarezza, performance e affidabilità.
Ricapitolando
- Soluzione principale: attiva il canale giusto (Beta o Current aggiornato), quindi Inserisci › Casella di controllo sul range.
- Formule chiave:
COUNTIF(...;TRUE)
per presenze,COUNTIF(...;FALSE)
per assenze. - Tabella: indispensabile per filtri e riferimenti chiari (⌘ T).
- Compatibilità: se condividi con versioni diverse, valuta una copia con Controlli Modulo.
Con questi accorgimenti il tuo registro presenze diventa un sistema affidabile, pulito e a prova di crescita.