ฉันมีคอลัมน์บนแผ่นงานคอลัมน์ F ซึ่งเต็มไปด้วยวันที่ ตอนนี้ฉันต้องการวันที่เหล่านี้ในรูปแบบ "dd, mm, yyyy" แต่บางครั้งพวกเขาอยู่ในรูปแบบข้อความรูปแบบเรา / อาร์เมเนียในข้อมูลต้นฉบับ เหตุใดฉันจึงใช้แมโครเพื่อแปลงในรูปแบบที่ถูกต้องมันจะเปลี่ยนวันที่และเดือนเป็นบางครั้ง แต่ถ้าฉันทำด้วยตนเองจะไม่มีข้อผิดพลาดเกิดขึ้น
กำลังใช้ค่าการวางเพื่อรับข้อมูลในแผ่นงานของฉันและนี่คือรหัสของฉัน มันแสดงเดือนที่ถูกต้องสำหรับรูปแบบ dd / mmm / yyyy แต่สลับเดือนและวันที่
Range("F2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.NumberFormat = "dd/mmm/yyyy"
Selection.TextToColumns Destination:=Range("F2"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 4), TrailingMinusNumbers:=True
Selection.NumberFormat = "dd/mm/yyyy"
ใช้เซลล์ F2 วันที่ 9 มกราคม 2552 ในรูปแบบ 09/01/2552
เมื่อฉันทำข้อความกับคอลัมน์มันจะทำให้วันที่เป็นวันที่ 09/01/2009
เมื่อฉันทำซ้ำข้อความไปยังคอลัมน์ (ไม่มีการเปลี่ยนแปลงใด ๆ ) มันจะเปลี่ยนวันที่ (ไม่ใช่รูปแบบ) เป็นวันที่ 1 กันยายน 2009
ไม่มีใครรู้ว่าทำไมสิ่งนี้เกิดขึ้น? หากฉันทำข้อความเป็นคอลัมน์ด้วยตนเองฉันสามารถทำซ้ำได้ตลอดทั้งวันโดยอยู่ในรูปแบบที่ฉันชอบ
ปัญหาเกิดขึ้นเมื่อฉันทำซ้ำแมโครเท่านั้นไม่แน่ใจว่าฉันทำอะไรผิด ลองเปลี่ยน fieldinfo เป็น array (array (1,4)) ไปเป็นประโยชน์
หวังว่าใครบางคนสามารถช่วยได้
Other:=False, FieldInfo _ :=Array(1, 4), TrailingMinusNumbers:=True
กำลังทำอะไร