วิธีการแปลงสตริงเป็นวันที่ใน vba (พร้อมตัวอย่าง)
คุณสามารถใช้ฟังก์ชัน CDate ใน VBA เพื่อแปลงสตริงข้อความเป็นวันที่ได้
ต่อไปนี้เป็นสองวิธีทั่วไปในการใช้คุณลักษณะนี้ในทางปฏิบัติ:
วิธีที่ 1: แปลงสตริงเป็นวันที่โดยใช้รูปแบบเริ่มต้น (MM/DD/YYYY)
Sub ConvertStringToDate()
Dim i As Integer
For i = 2 To 8
Range(" B " & i) = CDate(Range(" A " & i))
Next i
End Sub
มาโครเฉพาะนี้จะแปลงแต่ละสตริงในช่วง A2:A8 เป็นวันที่ด้วยรูปแบบวันที่เริ่มต้น MM/DD/YYYY
เช่น สตริงข้อความวันที่ 15/04/2023 จะถูกแปลงเป็นวันที่ 15/04/2023
วิธีที่ 2: แปลงสตริงเป็นวันที่โดยใช้รูปแบบที่กำหนดเอง
Sub ConvertStringToDate()
Dim i As Integer
For i = 2 To 8
Range(" B " & i) = Format(CDate(Range(" A " & i)), " MM.DD.YYYY ")
Next i
End Sub
มาโครเฉพาะนี้จะแปลงแต่ละสตริงในช่วง A2:A8 เป็นวันที่ในรูปแบบ MM.DD.YYYY
เช่น สตริงข้อความวันที่ 15/04/2023 จะถูกแปลงเป็นวันที่ 15/04/2023
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติกับคอลัมน์สตริงต่อไปนี้ใน Excel:
ตัวอย่างที่ 1: แปลงสตริงเป็นวันที่โดยใช้รูปแบบเริ่มต้น
เราสามารถใช้มาโครต่อไปนี้เพื่อแปลงแต่ละสตริงในคอลัมน์ A เป็นวันที่ในรูปแบบ MM/DD/YYY เริ่มต้น:
Sub ConvertStringToDate()
Dim i As Integer
For i = 2 To 8
Range(" B " & i) = CDate(Range(" A " & i))
Next i
End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
โปรดทราบว่าคอลัมน์ B จะแปลงแต่ละสตริงในคอลัมน์ A เป็นวันที่ด้วยรูปแบบวันที่เริ่มต้น MM/DD/YYYY
ตัวอย่างที่ 2: แปลงสตริงเป็นวันที่โดยใช้รูปแบบที่กำหนดเอง
เราสามารถใช้มาโครต่อไปนี้เพื่อแปลงแต่ละสตริงในคอลัมน์ A เป็นวันที่ด้วยรูปแบบที่กำหนดเองเป็น MM.DD.YYY:
Sub ConvertStringToDate()
Dim i As Integer
For i = 2 To 8
Range(" B " & i) = Format(CDate(Range(" A " & i)), " MM.DD.YYYY ")
Next i
End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
โปรดทราบว่าคอลัมน์ B จะแปลงแต่ละสตริงในคอลัมน์ A เป็นวันที่ด้วยรูปแบบ MM.DD.YYYY แบบกำหนดเอง
คุณสามารถใช้ฟังก์ชัน รูปแบบ VBA เพื่อแสดงวันที่ในรูปแบบที่คุณต้องการได้
หมายเหตุ : คุณสามารถค้นหาเอกสารฉบับเต็มสำหรับฟังก์ชัน VBA CDate ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:
วิธีแปลงสตริงเป็น int ใน VBA
วิธีแปลงสตริงให้ยาวใน VBA
วิธีแปลงสตริงเป็นสองเท่าใน VBA