it-swarm-eu.dev

Come posso ottenere il nome del giorno in una cella in Excel?

Data una data, come posso ottenere il giorno della settimana (ad esempio "lunedì") in una cella in Excel?

33
Don Vince

Semplice esempio:

Cella A1: 1/8/2009
Cella B1: = TEXT (WEEKDAY (A1), "dddd")

Questo, per la data specificata, stamperà il giorno corrispondente.

E 'questo che volevi?

54
Rook

La risposta sopra riportata funziona solo per fluke perché Excel pensa che 1/1/1900 fosse una domenica * e, per impostazione predefinita, Excel utilizza domenica come primo giorno della settimana per la funzione Weekday.

Quello che stai effettivamente calcolando in quel metodo è il giorno della settimana come numero, quindi la formattazione come un giorno basato su quel numero interpretato come una data. Ad esempio, se la tua data è 1/2/2003 e utilizzi la funzione WEEKDAY, ne risulta 7 (= sabato). Quando si formatta questo come "dddd", in realtà si ottiene il nome del giorno del settimo giorno in Excel a partire dalla sua "Epoch", ovvero 7/1/1900, che sembra essere un sabato *. Questa formula si interromperà se qualcuno lo apre che ha l'opzione selezionata per utilizzare il sistema di data basato sul 1904, poiché 1/1/1904 non era una domenica, ma un venerdì. (sì, lo so quasi nessuno lo usa, ma non vuoi costruire una soluzione che si basa su questo?)

Puoi rendere la formula più breve, più veloce e più robusta semplicemente usando

=TEXT(A1,"dddd")

Ovviamente potresti semplicemente formattare le celle della data con un formato personalizzato come già suggerito, a seconda che tu ne abbia davvero bisogno in una colonna separata o meno. Uso spesso formati di date come

ddd dd mmm yyyy

per esempio sab 01 feb 2003 quindi la data è esplicita ma mostra anche il nome del giorno della settimana.

Usare una seconda colonna e una funzione TEXT è essenziale se si desidera utilizzare esplicitamente il giorno della settimana da qualche parte in una stampa unione (ad esempio), analogamente per cose come le valute e così via Excel> La fusione di Word passa il valore reale sottostante memorizzato piuttosto che l'on versione formattata a schermo, quindi indipendentemente dal formato della cella, Word vede un numero orribile. Un vero campo di testo viene passato "così com'è" e viene visualizzato correttamente in Word.

* in effetti è un lunedì ma Excel è stato scritto per corrispondere alle date errate in Lotus 1-2-3 che considerava 1900 come anno bisestile quando non lo è.

19
AdamV

Un'altra possibilità, a seconda di cosa si vuole fare con la data successiva, è impostare il formato della cella su Personalizzato: dddd

7
Margaret

Ho trovato che le dichiarazioni IF di nidificazione possono essere ingombranti, ma funziona. Se, tuttavia, desideri risparmiare un po 'di digitazione, puoi provare questo:

=CHOOSE(WEEKDAY(A2), "Sun","Mon","Tue","Wed","Thur","Fri","Sat")

Oppure, se hai bisogno di nomi completi:

=CHOOSE(WEEKDAY(A2), "Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")

In questo esempio, "A2" può essere qualunque cella (o formula) contenga la data in questione. Per esempio:

=CHOOSE(WEEKDAY(TODAY()), "Sun","Mon","Tue","Wed","Thur","Fri","Sat") 

stamperebbe l'abbreviazione di tre lettere per qualunque cosa sia oggi.

5
Brad

puoi anche localizzare la risposta usando [$ nnn] prima del formato (quindi il codice personalizzato è: [$ nnn] dddd; @). cambia nnn con il codice lingua corretto. non ho la lista, ma in qualche modo, il codice inglese è -409 (e il mio locale è -421).

penso che tu possa sperimentare con il formato numerico, cambiare il campo della lingua, quindi cambiarlo in formato personalizzato.

1
user261479

Cella A1: 1/8/2009 Cella B1: = A1 quindi premere ctrl + 1 (formato cella) selezionare la scheda numero, fare clic su personalizzato, quindi digitare "DDDD" sul tipo txtbox

1
user334332

Visualizza la data corrente

=TEXT(WEEKDAY(MONTH(TODAY())),"dddd")  

Visualizza la data corrente con il testo richiesto richiesto.

=CHOOSE(WEEKDAY(MONTH(TODAY())), "S-U-N-D-A-Y","M-O-N-D-A-Y","T-U-E-S-D-A-Y","W-E-D-N-E-S-D-A-Y","T-H-R-S-D-A-Y","F-R-I-D-A-Y","S-A-T-U-R-D-A-Y")
0
Glen Lloyd

Formato celle - Data - Tipo di calendario (selezionare Inglese gregoriano) - Tipo (la sezione ha il formato richiesto mercoledì, 14 marzo 2001)

0
Raj

La funzione WEEKDAY può essere utilizzata nei codici Vba. Per esempio :

Label1.Caption = WeekdayName(Weekday(TextBox1, 0), False, 0)

Il nome del giorno è ottenuto da TextBox1 nell'esempio sopra. Il risultato è "lunedì" .

Ho usato questa funzione quando ho creato userform sull'immissione della data nella cella attiva con il menu del tasto destro.

Il modello può essere rivisto qui

0
kadrleyn