Come convertire un numero di settimana in una data, o viceversa, in Excel?
Lavorare con date e numeri di settimana in Excel è un’esigenza comune nell’analisi aziendale, nella pianificazione di progetti e nella reportistica. Ad esempio, potreste voler sapere in quale settimana cade una determinata data oppure individuare l’intervallo di date corrispondente a un certo numero di settimana in un anno specifico. Tuttavia, Excel non offre opzioni integrate dirette per convertire un numero di settimana in un intervallo completo di date o per invertire rapidamente il processo. Per soddisfare queste esigenze, potete ricorrere a diverse formule, soluzioni VBA e altre funzionalità di Excel, a seconda dei requisiti specifici e del volume di dati da elaborare. Di seguito sono illustrati diversi metodi pratici per gestire questa attività in Excel.
Converti Numero di settimana in data con formule
Converti data in Numero di settimana con formule
Converti tra Numero di settimana e data con codici VBA
Converti Numero di settimana in data con formule
Supponiamo di avere un anno specifico e un numero di settimana inseriti nel foglio di lavoro (ad esempio,)2015 nella cella B1 e 15 nella cella B2). Potreste voler calcolare la data di inizio effettiva (lunedì) e la data di fine (domenica) di quella settimana. Questo può rivelarsi particolarmente utile per pianificare orari, preparare riepiloghi settimanali o fare riferimento a periodi di reportistica settimanale.
Per calcolare il Intervallo di date relativo al Numero di settimana specificato, potete utilizzare le seguenti formule di Excel:
1. Selezionate una cella vuota per visualizzare la data di inizio (qui, la cella)B5). Inserite la seguente formula e premete il tasto Invio. La formula restituirà un numero seriale che rappresenta la data.
=MAX(DATE(B1,1,1),DATE(B1,1,1)-WEEKDAY(DATE(B1,1,1),2)+(B2-1)*7+1) 2. Per la data di fine della stessa settimana (ad esempio, nella cella)B6), inserite la seguente formula, quindi premete Invio. La formula restituirà il numero seriale dell’ultimo giorno della settimana specificata.
=MIN(DATE(B1+1,1,0),DATE(B1,1,1)-WEEKDAY(DATE(B1,1,1),2)+B2*7)
Nota: Nelle formule sopra indicate, B1 è la cella che contiene l’anno (ad esempio, 2015), mentre B2 contiene il numero di settimana da convertire. Modificate questi riferimenti di cella in base alle esigenze del vostro foglio di lavoro.
3. All’inizio, le formule restituiscono numeri anziché date formattate. Per visualizzarle correttamente nel formato data, selezionate entrambe le celle contenenti le formule, quindi andate su Home > Formato numeri (elenco a discesa) > Data breve. In questo modo, i valori verranno convertiti in date riconoscibili.
Suggerimenti: Queste formule si basano sul sistema di date settimanali ISO — in cui le settimane iniziano il lunedì — comunemente adottato negli standard europei per buste paga e reportistica. Se la vostra organizzazione utilizza un diverso sistema di numerazione delle settimane, i risultati potrebbero variare. Verificate sempre con attenzione i risultati per gli anni che iniziano a metà settimana (ad esempio, quando il 1° gennaio non cade di lunedì) o per gli anni con 53 settimane.
Converti data in Numero di settimana con formule
Al contrario, potreste voler determinare il numero della settimana in cui ricade una data specifica. Excel offre la funzione NUM.SETTIMANA proprio a questo scopo. È particolarmente utile per analizzare i dati dei timesheet, generare report settimanali o monitorare consegne ed eventi organizzati per settimana.
1. Scegliete una cella vuota per visualizzare il numero della settimana e inserite la seguente formula (ipotizzando che la vostra data si trovi in)B1):
=WEEKNUM(B1,1) 2. Quindi premete Invio. Questa formula restituisce il numero della settimana considerando la domenica come primo giorno della settimana.
Note:
(1) In questa formula, B1 è la cella che contiene la data da convertire.
(2)Se preferite contare le settimane a partire dal lunedì (come nel sistema settimanale ISO), utilizzate questa versione della formula:
=WEEKNUM(B1,2) Converti tra Numero di settimana e data con codici VBA
In questo articolo esploreremo due routine VBA: una che converte un numero di settimana (e anno) nel relativo intervallo di date e un’altra che determina il numero di settimana ISO per qualsiasi data fornita.
Converti Numero di settimana in Intervallo di date:
1. Aprite l’Editor VBA facendo clic su Sviluppo > Visual Basic. Nella finestra che si apre, fate clic su Inserisci > Modulo e incollate il codice seguente nel modulo:
Sub WeekNumberToDateRange()
Dim YearNum As Long
Dim WeekNum As Long
Dim FirstDay As Date, LastDay As Date
Dim Jan4 As Date
YearNum = Application.InputBox("Enter the year:", "KutoolsforExcel", Year(Date), Type:=1)
If YearNum < 1 Then Exit Sub
WeekNum = Application.InputBox("Enter the week number:", "KutoolsforExcel", 1, Type:=1)
If WeekNum < 1 Then Exit Sub
Jan4 = DateSerial(YearNum, 1, 4)
FirstDay = Jan4 - Weekday(Jan4, vbMonday) + 1
FirstDay = FirstDay + (WeekNum - 1) * 7
LastDay = FirstDay + 6
MsgBox "Start date: " & Format(FirstDay, "yyyy-mm-dd") & vbCrLf & _
"End date: " & Format(LastDay, "yyyy-mm-dd"), _
vbInformation, "KutoolsforExcel"
End Sub
2. Eseguite la macro utilizzando il pulsante
. Vi verrà chiesto di inserire l’anno e il numero di settimana; dopodiché, l’intervallo di date corrispondente verrà visualizzato in una finestra di dialogo.
Converti data in Numero di settimana:
1. Copiate e incollate il seguente codice VBA nel modulo:
Sub DateToWeekNumber()
Dim InputDate As Date
Dim WeekNum As Integer
InputDate = Application.InputBox("Enter the date (yyyy-mm-dd):", "KutoolsforExcel", Date, Type:=2)
WeekNum = WorksheetFunction.WeekNum(InputDate, 2)
MsgBox "The week number is: " & WeekNum, vbInformation, "KutoolsforExcel"
End Sub
2. Dopo aver inserito ed eseguito questo codice, inserite la data desiderata quando richiesto e la macro mostrerà il numero di settimana, considerando il lunedì come inizio della settimana. Potete modificare il codice cambiando il secondo argomento in Num.Settimana in 1 per settimane che iniziano di domenica.
vbLunedìo vbDomenicanel codice VBA.Converti con un clic più date non standard Formattazione standard in date normali in Excel
L’utilità **Riconoscimento data** di Kutools per Excel ti permette di identificare e convertire in un solo clic date, numeri non standard (ad esempio yyyymmdd) o testo normale in formato data standard, aumentando la produttività e riducendo gli errori causati dalla conversione manuale. Prova subito la versione completa gratuita per 30 giorni!
Articoli correlati:
Come contare il numero di giorni feriali specifici compresi tra due date in Excel?
Come aggiungere o sottrarre giorni, mesi o anni a una data in Excel?
Migliori Strumenti per la Produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede all’interno della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!
Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.
Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.
- Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
- Funziona meglio insieme— produttività ottimizzata tra le app di Office
- Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
- Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi