ฉันจะนำชื่อวันเข้าสู่เซลล์ใน Excel ได้อย่างไร


33

ระบุวันที่ฉันจะนำวันในสัปดาห์ (เช่น "วันจันทร์") เข้าสู่เซลล์ใน Excel ได้อย่างไร


4
คุณสามารถพิมพ์ MONDAY ลงในเซลล์ด้วยแป้นพิมพ์ของคุณ ... แต่อย่างใดฉันคิดว่าคุณหมายถึงสิ่งที่แตกต่าง
Mike Cooper

Oh yeah: o) ฉันสามารถพิมพ์มันได้อย่างแน่นอน ฉันจะอัปเดตคำถามเพื่อให้มีความเฉพาะเจาะจงมากขึ้น
Don Vince

คำตอบ:


54

ตัวอย่างง่ายๆ:

เซลล์ A1: 1/8/2009
เซลล์ B1: = ข้อความ (วันธรรมดา (A1), "dddd")

สิ่งนี้จะพิมพ์วันที่ที่ต้องการ

นี่คือสิ่งที่คุณต้องการหรือไม่


ขอบคุณมาก! ตัวพิมพ์เล็ก: มีเครื่องหมายอัฒภาคอยู่ตรงกลางซึ่งควรเป็นเครื่องหมายจุลภาค
Don Vince

@ Don Vince - อัพขอโทษด้วย
โกง

2
ใช้เครื่องหมายอัฒภาคในการแปลท้องถิ่น (การตั้งค่าภูมิภาคใน Windows) ที่ใช้เครื่องหมายจุลภาคสำหรับตัวคั่นทศนิยม เช่นเดียวกับในภาษาที่ภาษาอังกฤษ 1,000.00 (หนึ่งพัน) จะเขียนเป็น 1.000,00 และจะถูกป้อนเป็น 1,000,00 ใน Excel จริง ๆ แล้วฉันคิดว่าอัฒภาคยอมรับได้เสมอ แต่อาจผิดพลาด
Arjan

คุณยินดีต้อนรับ :) และคำตอบที่ถูกต้องสมควรได้รับการโหวตขึ้น +1

4
สิ่งนี้ทำงานได้เนื่องจากความแปลกของ 1/1/1900 ที่เป็นวันอาทิตย์ สูญเสียฟังก์ชันวันทำงานอย่างสมบูรณ์เพียงแค่ใช้ = TEXT (A1, "dddd") (ดูคำตอบแบบเต็มของฉันด้านล่าง)
AdamV

19

คำตอบที่ให้ไว้ข้างต้นใช้งานได้โดยฟลุคเท่านั้นเนื่องจาก Excel คิดว่า 1/1/1900 เป็นวันอาทิตย์ * และโดยค่าเริ่มต้น Excel ใช้วันอาทิตย์เป็นวันแรกของสัปดาห์สำหรับฟังก์ชั่น Weekday

สิ่งที่คุณกำลังคำนวณในวิธีนั้นคือวันของสัปดาห์เป็นตัวเลขแล้วจัดรูปแบบนั้นเป็นวันตามตัวเลขนั้นตีความว่าเป็นวันที่ เช่นถ้าวันที่ของคุณคือ 1/2/2003 และคุณใช้ฟังก์ชัน WEEKDAY ผลลัพธ์จะเป็น 7 (= วันเสาร์) เมื่อคุณจัดรูปแบบสิ่งนี้เป็น "dddd" คุณจะได้รับชื่อวันของวันที่ 7 ใน Excel ตั้งแต่ "ยุค" ของมันนั่นคือ 7/1/1900 ซึ่งเกิดขึ้นเป็นวันเสาร์ * สูตรนี้จะแตกถ้ามีใครเปิดเป็นใครมีตัวเลือกให้เลือกใช้ระบบวันที่แบบอิง 1904 เนื่องจาก 1/1/1904 ไม่ใช่วันอาทิตย์ แต่เป็นวันศุกร์ (ใช่ฉันรู้ว่าแทบจะไม่มีใครใช้สิ่งนั้น แต่คุณไม่ต้องการสร้างโซลูชันที่ต้องพึ่งพาคุณใช่ไหม)

คุณสามารถทำให้สูตรสั้นลงเร็วขึ้นและมีประสิทธิภาพมากขึ้นเพียงแค่ใช้

=TEXT(A1,"dddd")

แน่นอนว่าคุณสามารถจัดรูปแบบเซลล์วันที่ด้วยรูปแบบที่กำหนดเองตามที่แนะนำแล้วขึ้นอยู่กับว่าคุณต้องการสิ่งนี้ในคอลัมน์แยกต่างหากหรือไม่ ฉันมักจะใช้รูปแบบวันที่เช่น

ddd dd mmm yyyy

เพื่อให้เช่นวันที่ 1 กุมภาพันธ์ 2546ดังนั้นวันที่จะชัดเจน แต่แสดงชื่อวันทำงานด้วย

การใช้คอลัมน์ที่สองและฟังก์ชั่น TEXT เป็นสิ่งจำเป็นหากคุณต้องการใช้วันทำงานอย่างชัดเจนในจดหมายเวียน (เช่น) เช่นเดียวกับสิ่งต่าง ๆ เช่นสกุลเงินเป็นต้น Excel> Word การผสานผ่านค่าที่จัดเก็บจริงแทนที่จะเป็นบน รุ่นที่จัดรูปแบบหน้าจอดังนั้นไม่ว่ารูปแบบเซลล์จะเป็นอย่างไร Word ก็เห็นตัวเลขที่น่ากลัว ช่องข้อความที่แท้จริงจะถูกส่งผ่าน 'ตามสภาพ' และแสดงอย่างถูกต้องใน Word

* ในความเป็นจริงมันเป็นวันจันทร์ แต่ Excel ถูกเขียนให้ตรงกับวันที่ไม่ถูกต้องใน Lotus 1-2-3 ซึ่งถือว่า 1900 เป็นปีอธิกสุรทินเมื่อไม่ได้


ฉันอัปเกรดแล้วก่อนที่จะแก้ไข ตอนนี้มันดีขึ้นกว่าเดิม
Jeroen Wiert Pluimers

7

ความเป็นไปได้อื่นขึ้นอยู่กับสิ่งที่คุณต้องการทำกับวันที่หลังจากนั้นคือการตั้งค่ารูปแบบของเซลล์เป็นกำหนดเอง: dddd


สุดยอด! นั่นเป็นการหลอกลวงและเป็นการดีสำหรับสถานการณ์ที่คุณไม่ต้องการใช้คอลัมน์อื่น ขอบคุณ
Don Vince

แม้ว่าคุณต้องการใช้คอลัมน์อื่นคุณสามารถทำได้และป้อนสูตรเช่น=A1ในตัวอย่างจากคำตอบแรก
Arjan

5

ฉันพบว่าIFคำสั่งซ้อนอาจยุ่งยาก แต่ใช้งานได้ อย่างไรก็ตามหากคุณต้องการประหยัดการพิมพ์เพียงเล็กน้อยคุณสามารถลอง:

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

หรือถ้าคุณต้องการชื่อเต็ม:

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

ในตัวอย่างนี้ "A2" อาจเป็นสิ่งที่เซลล์ (หรือสูตร) ​​มีวันที่ที่เป็นปัญหา ตัวอย่างเช่น

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

จะพิมพ์ตัวย่อสามตัวอักษรสำหรับสิ่งที่วันนี้


1

คุณสามารถ จำกัด วงคำตอบโดยใช้ [$ nnn] ก่อนรูปแบบ (ดังนั้นรหัสที่กำหนดเองคือ: [$ nnn] dddd; @) เปลี่ยน nnn ด้วยรหัสภาษาที่เหมาะสม ฉันไม่มีรายการ แต่อย่างใดรหัสภาษาอังกฤษคือ -409 (และท้องถิ่นของฉันคือ -421)

ฉันคิดว่าคุณสามารถทดลองใช้รูปแบบตัวเลขเปลี่ยนฟิลด์ภาษาจากนั้นเปลี่ยนกลับเป็นรูปแบบกำหนดเอง


1
ยินดีต้อนรับสู่ SuperUser คำตอบควรมีอยู่ในตัวเองดังนั้นโปรดขยายคำตอบของคุณเป็นตัวอย่างการทำงาน นอกจากนี้เรายังไม่ทราบว่าคุณมาจากไหนดังนั้นในพื้นที่ของฉันจึงไม่เจาะจง
ทิม

1

เซลล์ A1: 1/8/2009 เซลล์ B1: = A1 แล้วกด ctrl + 1 (เซลล์รูปแบบ) เลือกแท็บตัวเลขแล้วคลิกกำหนดเองจากนั้นพิมพ์ "DDDD" ในประเภท txtbox


0

แสดงวันที่ปัจจุบัน

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

แสดงวันที่ปัจจุบันด้วยข้อความที่ต้องการ

=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")

นี่เป็นเพียงการทำซ้ำคำตอบก่อนหน้านี้หลาย ๆ
fixer1234

0

จัดรูปแบบเซลล์ - วันที่ - ประเภทปฏิทิน (เลือกภาษาอังกฤษแบบคริสต์ศักราช) - ประเภท (ส่วนมีรูปแบบที่คุณต้องการวันพุธที่ 14 มีนาคม 2544)


0

ฟังก์ชัน WEEKDAY สามารถใช้ในรหัส Vba ได้ ตัวอย่างเช่น :

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

ชื่อวันได้มาจาก TextBox1 ในตัวอย่างด้านบน ผลคือ"จันทร์"

ฉันใช้ฟังก์ชั่นนี้เมื่อฉันสร้างรูปแบบผู้ใช้เกี่ยวกับรายการวันที่ไปยังเซลล์ที่ใช้งานด้วยเมนูคลิกขวา

แม่แบบสามารถตรวจสอบได้ที่นี่


คำแนะนำ: มีอะไรพิเศษเกี่ยวกับคำตอบของคุณส่วนที่ตอบคำถามโดยตรงคือชื่อวันทำงานไม่ใช่วันทำงาน นั่นเป็นคำศัพท์ที่ให้ความสำคัญในประโยคแรก
fixer1234
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.