ข้ามไปที่เนื้อหาหลัก
Office

ฟังก์ชัน Format

ส่งกลับตัวแปร(สตริง) ที่มีการจัดรูปแบบ นิพจน์ ตามคำแนะนำที่มีอยู่ในนิพจน์รูปแบบ

คำเตือน    มีปัญหาเกิดขึ้นกับการใช้ฟังก์ชันนี้ วันจันทร์สุดท้ายในช่วงเวลาปฏิทินบางปีสามารถส่งกลับเป็นสัปดาห์๕๓เมื่อควรเป็นสัปดาห์ที่1 สำหรับข้อมูลเพิ่มเติมและการแก้ไขปัญหาให้ดูที่การจัดรูปแบบหรือฟังก์ชัน DatePart สามารถส่งกลับหมายเลขสัปดาห์ที่ไม่ถูกต้องสำหรับวันจันทร์สุดท้ายในปี

ดูตัวอย่างบางส่วน

ไวยากรณ์

รูปแบบ ( นิพจน์[รูปแบบ][, firstdayofweek ] [, firstweekofyear ] )

ไวยากรณ์ของฟังก์ชันFormatมีอาร์กิวเมนต์ดังนี้

อาร์กิวเมนต์

คำอธิบาย

นิพจน์

จำเป็น นิพจน์ที่ถูกต้องใดๆ

รูปแบบ

ไม่จำเป็น นิพจน์การจัดรูปแบบที่มีชื่อหรือที่ผู้ใช้กำหนดเอง

firstdayofweek

ไม่จำเป็น ค่าคงที่ ที่ระบุวันแรกของสัปดาห์

firstweekofyear

ไม่จำเป็น ค่าคงที่ที่ระบุสัปดาห์แรกของปี


การตั้งค่า

อาร์กิวเมนต์formatสามารถใช้การตั้งค่าต่างๆได้ทั้งนี้ขึ้นอยู่กับชนิดข้อมูลของอาร์กิวเมนต์นิพจน์ ดูบทความที่แสดงรายการในตารางต่อไปนี้สำหรับข้อมูลเพิ่มเติมเกี่ยวกับนิพจน์รูปแบบที่ถูกต้อง

สำหรับนิพจน์ที่ใช้ชนิดข้อมูลนี้ ...

ดูบทความ

ชนิดใดก็ได้

คุณสมบัติ 'รูปแบบ' (Format)

วันที่/เวลา

จัดรูปแบบเขตข้อมูลวันที่และเวลา

ตัวเลข

จัดรูปแบบเขตข้อมูลตัวเลขหรือเขตข้อมูลสกุลเงิน

ข้อความและบันทึก

จัดรูปแบบเขตข้อมูลข้อความ

ใช่/ไม่ใช่

คุณสมบัติ 'รูปแบบ' - ชนิดข้อมูล Yes/No


อาร์กิวเมนต์firstdayofweekมีการตั้งค่าเหล่านี้:

ค่าคงที่

ค่า

คำอธิบาย

vbUseSystem

0

ใช้การตั้งค่าของ NLS API

VbSunday

1

วันอาทิตย์ (ค่าเริ่มต้น)

vbMonday

2

วันจันทร์

vbTuesday

3

วันอังคาร

vbWednesday

4

วันพุธ

vbThursday

5

วันพฤหัสบดี

vbFriday

6

วันศุกร์

vbSaturday

7

วันเสาร์


อาร์กิวเมนต์firstweekofyearมีการตั้งค่าเหล่านี้:

ค่าคงที่

ค่า

คำอธิบาย

vbUseSystem

0

ใช้การตั้งค่าของ NLS API

vbFirstJan1

1

เริ่มต้นด้วยสัปดาห์ที่1มกราคมเกิดขึ้น (ค่าเริ่มต้น)

vbFirstFourDays

2

เริ่มต้นด้วยสัปดาห์แรกที่มีอย่างน้อยสี่วันในปี

vbFirstFullWeek

3

เริ่มต้นด้วยสัปดาห์เต็มของปีแรกของปี


ข้อสังเกต

เมื่อต้องการจัดรูปแบบ

ทำสิ่งนี้

ตัวเลข

ใช้รูปแบบตัวเลขที่มีชื่อที่กำหนดไว้ล่วงหน้าหรือสร้างรูปแบบตัวเลขที่ผู้ใช้กำหนดเอง

วันที่และเวลา

ใช้รูปแบบวันที่/เวลาที่กำหนดไว้ล่วงหน้าหรือสร้างรูปแบบวันที่/เวลาที่ผู้ใช้กำหนดเอง

หมายเลขลำดับของวันที่และเวลา

ใช้รูปแบบวันที่และเวลาหรือรูปแบบตัวเลข

สตริ

สร้างรูปแบบสตริงที่กำหนดโดยผู้ใช้ของคุณเอง


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

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

หมายเหตุ: ถ้าการตั้งค่าคุณสมบัติปฏิทินเป็นสุริยคติและรูปแบบจะระบุการจัดรูปแบบวันที่นิพจน์ที่ให้มาจะต้องเป็นแบบคริสต์ศักราช ถ้าการตั้งค่าคุณสมบัติของปฏิทินVisual Basic เป็นฮิจเราะห์นิพจน์ที่ให้มาจะต้องเป็นฮิจเราะห์

ถ้าปฏิทินเป็นสุริยคติความหมายของสัญลักษณ์นิพจน์ของรูปแบบจะไม่เปลี่ยนแปลง ถ้าปฏิทินเป็นฮิจเราะห์สัญลักษณ์รูปแบบวันที่ทั้งหมด (ตัวอย่างเช่น dddd, mmmm, ปปปป) มีความหมายเดียวกันแต่จะนำไปใช้กับปฏิทินฮิจเราะห์ สัญลักษณ์รูปแบบจะยังคงอยู่ในภาษาอังกฤษ สัญลักษณ์ที่ทำให้เกิดการแสดงข้อความ (ตัวอย่างเช่น AM และ PM) แสดงสตริงที่ (ภาษาอังกฤษหรืออาหรับ) ที่เกี่ยวข้องกับสัญลักษณ์นั้น ช่วงของสัญลักษณ์บางอย่างจะเปลี่ยนไปเมื่อปฏิทินเป็นฮิจเราะห์

สัญลักษณ์

ช่วง

d

1-30

dd

1-30

ww

1-51

mmm

แสดงชื่อเดือนแบบเต็ม (ชื่อเดือนแบบฮิจเราะห์ไม่มีคำย่อ)

y

1-355

yyyy

100-9666

ตัวอย่าง

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

รูปแบบ ([วันที่], "ww") = Format (Now (), "ww")-1

ในตัวอย่างนี้แหล่งระเบียนของรายงานจะมีเขตข้อมูลวันที่ชื่อซึ่งมีวันที่ที่มีการปรับเปลี่ยนระเบียนแต่ละระเบียนและที่ใช้ในรายงาน เมื่อคุณเรียกใช้รายงานผลลัพธ์จะถูกกรองเพื่อแสดงเฉพาะระเบียนที่มีจำนวนสัปดาห์สำหรับค่าในเขตข้อมูลวันที่ (รูปแบบ ([วันที่], "ww")) จะเท่ากับสัปดาห์ก่อนหน้า (Format (Now (), "ww")-1)

ใช้ฟังก์ชัน Format ในโค้ด VBA    

หมายเหตุ: ตัวอย่างที่ทำตามสาธิตการใช้ฟังก์ชันนี้ในโมดูลของแอปพลิเคชัน Visual Basic for Applications (VBA) สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการทำงานกับ VBA ให้เลือกการอ้างอิงนักพัฒนาในรายการดรอปดาวน์ที่อยู่ถัดจากค้นหาและใส่เงื่อนไขอย่างน้อยหนึ่งข้อในกล่องค้นหา

ตัวอย่างนี้จะแสดงการใช้ฟังก์ชันรูปแบบต่างๆเพื่อจัดรูปแบบค่าโดยใช้รูปแบบที่มีชื่อและรูปแบบที่ผู้ใช้กำหนดเอง สำหรับตัวคั่นวันที่ (/) ตัวคั่นเวลา (:) และ AM/PM ตามตัวอักษรผลลัพธ์ที่จัดรูปแบบจริงที่แสดงโดยระบบของคุณจะขึ้นอยู่กับการตั้งค่าตำแหน่งที่ตั้งของคอมพิวเตอร์ที่ใช้รหัส เมื่อเวลาและวันที่แสดงอยู่ในสภาพแวดล้อมการพัฒนารูปแบบเวลาแบบสั้นและรูปแบบวันที่แบบสั้นของตำแหน่งที่ตั้งของรหัสจะถูกใช้ เมื่อแสดงโดยการเรียกใช้โค้ดรูปแบบเวลาแบบสั้นและรูปแบบวันที่แบบสั้นของตำแหน่งที่ตั้งของระบบจะถูกใช้ซึ่งอาจแตกต่างจากตำแหน่งที่ตั้งของรหัส สำหรับตัวอย่างนี้ตำแหน่งที่ตั้งของภาษาอังกฤษของสหรัฐอเมริกาจะถูกสันนิษฐาน

MyTime และ MyDate จะแสดงอยู่ในสภาพแวดล้อมการพัฒนาโดยใช้การตั้งค่าเวลาแบบสั้นของระบบปัจจุบันและการตั้งค่าวันที่แบบสั้น

Dim MyTime, MyDate, MyStr
MyTime = #17:04:23#
MyDate = #January 27, 1993#
' Returns current system time in the system-defined long time format.
MyStr = Format(Time, "Long Time")
' Returns current system date in the system-defined long date format.
MyStr = Format(Date, "Long Date")
MyStr = Format(MyTime, "h:m:s") ' Returns "17:4:23".
MyStr = Format(MyTime, "hh:mm:ss AMPM") ' Returns "05:04:23 PM".
MyStr = Format(MyDate, "dddd, mmm d yyyy") ' Returns "Wednesday,
' Jan 27 1993".
' If format is not supplied, a string is returned.
MyStr = Format(23) ' Returns "23".
' User-defined formats.
MyStr = Format(5459.4, "##,##0.00") ' Returns "5,459.40".
MyStr = Format(334.9, "###0.00") ' Returns "334.90".
MyStr = Format(5, "0.00%") ' Returns "500.00%".
MyStr = Format("HELLO", "<") ' Returns "hello".
MyStr = Format("This is it", ">") ' Returns "THIS IS IT".


การใช้รูปแบบที่มีสตริงที่มีความยาวเป็นศูนย์

ใน Microsoft Access เวอร์ชัน๒.๐และเวอร์ชันก่อนหน้าคุณสามารถใช้ฟังก์ชันFormatเพื่อส่งกลับค่าหนึ่งค่าสำหรับ สตริงความยาวเป็นศูนย์ และอีกค่าหนึ่งสำหรับค่าได้ ตัวอย่างเช่นคุณสามารถใช้นิพจน์รูปแบบเช่นตัวอย่างต่อไปนี้ด้วยฟังก์ชันformatเพื่อส่งกลับค่าสตริงที่เหมาะสมจากโค้ด:

Dim varX As Variant
Dim varStrX As Variant
' Assign some value to varStrX and pass to Format function.
varX = Format(varStrX, "@;ZLS;Null")

ใน Microsoft Access เวอร์ชัน๙๗และเวอร์ชันที่ใหม่กว่าคุณต้องทดสอบแยกต่างหากสำหรับกรณีที่เป็นNullแล้วส่งกลับค่าที่เหมาะสมตามผลลัพธ์ ตัวอย่างเช่นคุณสามารถใช้ฟังก์ชัน.iifในนิพจน์ที่มีฟังก์ชันFormatดังต่อไปนี้:

varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))

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

ถ้าคุณแปลงฐานข้อมูลจาก Microsoft Access เวอร์ชัน๒.๐และเวอร์ชันก่อนหน้าไปยัง Microsoft Access ๒๐๐๒หรือเวอร์ชันที่ใหม่กว่าคุณต้องเปลี่ยนรหัสเพื่อทดสอบแยกต่างหากสำหรับกรณีที่เป็น Null

ดูเพิ่มเติม

ฟังก์ชันสตริงและวิธีใช้

ขยายทักษะ Office ของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×