ถ้าใช้ VB หรือ C# .NET สร้าง Excel File แล้วเกิด Error ประมาณนี้
Error: 0x80028018 (-2147647512)
Description: Old Format or Invalid Type Library
อาจจะเกิดปัญหาจาก Locale ของเครื่องไม่ตรงกับ ภาษาในเวอร์ชั่นของ excel เช่น ใช้ Excel เวอร์ชั่นภาษาอังกฤษ แต่ Locale ของเครื่องเป็นภาษาไทย เป็นต้น
การแก้ไขคือ ให้ปรับ Locale ในโค้ดเป็น En-US ก่อน แล้วถึงตามด้วยโค้ดที่ทำงานกับไฟล์ Excel พอทำงานกับ Excel เสร็จ ก็ restore locale กลับ เช่น
'backup ค่า Locale เดิม
Dim oldCI As System.Globalization.CultureInfo = _
System.Threading.Thread.CurrentThread.CurrentCulture
'ตั้งค่า Locale ใหม่
System.Threading.Thread.CurrentThread.CurrentCulture = _
New System.Globalization.CultureInfo("en-US")
'code ที่ทำงานกับ file Excel
'...
'restore ค่าเดิมกลับ
System.Threading.Thread.CurrentThread.CurrentCulture=oldCI
ไม่มีความคิดเห็น:
แสดงความคิดเห็น