Page 1 of 1
Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000
Posted: Fri May 05, 2023 2:40 pm
by March201711
ต้องการให้ปรับตัวเลขที่ export file ข้อมูลแล้วไม่ให้เป็น ### ให้แสดงข้อมูลเต็มจำนวน เพราะ ข้อมูลมาจากระบบไม่สามารถเปลี่ยนหรือขยาย column ได้ ต้องเขียน code ยังไงไม่ให้เปิด file เป็น csv แล้วขึ้น # คะ
Code: Select all
Sub Update()
'
'
Windows("book.csv").Activate
Range("A1:S5").Select
Selection.Copy
Windows("ExportCSV.xlsm").Activate
Range("A1").Select
ActiveSheet.Paste
Range("F7").Select
End Sub
Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000
Posted: Fri May 05, 2023 7:04 pm
by snasui

เป็นความต้องการที่ขัดแย้งกันในตัวเองครับ
การที่ขึ้นเครื่องหมาย # เพราะความกว้างเซลล์ไม่พอ แต่กลับมีข้อจำกัดว่าไม่สามารถปรับความกว้างคอลัมน์ได้ มีเหตุผลใดจึงต้องกำหนดเช่นนั้น
ปกติ CSV เอาไว้สำหรับการส่งผ่านข้อมูลให้โปรแกรมอื่นเอาไปใช้ต่อ ความกว้างคอลัมน์ไม่ใช่ปัญหาที่จะต้องมากำหนดให้คงที่หรือเท่านั้นเท่านี้ เพราะโปรแกรมปลายทางจะนำเฉพาะ Value ที่บรรจุอยู่ในเซลล์ไปใช้ ไม่ได้นำเอา Format ไปด้วย ถ้าผู้ใช้งานมีความไม่สะดวกหรือติดปัญหาอื่นใด กรุณาแนะนำให้มาถามด้วยตนเองจะดีกว่าครับ
เบื้องต้นหากต้องการให้เห็นตัวเลขครบก็ต้องปรับ Font ให้มีขนาดเล็กลงจนกว่าจะมองเห็นตัวเลข แต่หากปรับจนสุดแล้วยังมองไม่เห็นก็ไม่สามารถช่วยได้ครับ
Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000
Posted: Sat May 06, 2023 5:52 am
by March201711
ค่ะ พอดีว่าผู้รัยไฟล์จาก csvบอกว่าต้งมานั่งปรับมือขยาย column ทุกครั้ง ทำให้เค้าเสียเวลาเพราะไม่เห็นตัวเลขและ ตัวเลขขึ้น ## หรือ E+00 ตลอด จึงแยากปรับโดยลองใช้ code marco เอง แต่ก็ทำไม่ได้น่ะค่ะ ถ้าปรับไม่ได้ก็ไม่เป๋นไรค่ะขอบคุณค่ะ
Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000
Posted: Sat May 06, 2023 7:43 am
by loki99
ใน vba ลองใช้คำสั่ง ColumnWidth เพื่อ set ความกว้างให้ column นั้นครับ
ตัวอย่าง
Dim ws As Worksheet
Dim columnRange As Range
Set ws = ThisWorkbook.Sheets("Sheet1")
Set columnRange = ws.Range("A:A")
columnRange.ColumnWidth = 15
Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000
Posted: Sat May 06, 2023 7:53 am
by snasui
March201711 wrote: Fri May 05, 2023 2:40 pm
ข้อมูลมาจากระบบไม่สามารถเปลี่ยนหรือขยาย column ได้
March201711 wrote: Sat May 06, 2023 5:52 am
พอดีว่าผู้รัยไฟล์จาก csvบอกว่าต้งมานั่งปรับมือขยาย column ทุกครั้ง

เมื่อต้องขยายคอลัมน์เองแสดงว่าที่จริงแล้วไม่ใช่ปัญหาว่าขยายคอลัมน์ไมได้
การเปิดให้ขยายคอลัมน์ได้
ไม่ใช่ไปเปิดด้วยวิธี Open หรือ Double click ไฟล์ใน Folder แต่ให้เข้าเมนู Data > From Text เพื่อให้
เปิดกล่องโต้ตอบ Text Import Wizard
ส่วน Excel รุ่นปัจจุบัน เช่น O365 ได้ซ่อนเมนูนี้ไป หากไปคลิก Data > From Text/CSV จะ Import มาด้วย Power Query หากไม่มีประเด็นอื่นใดก็สามารถใช้ดูตัวเลขได้เช่นกัน
แต่หากต้องการเห็นเหมือนต้นฉบับ ให้คีย์ในช่อง Search บน Title Bar แล้วคลิกเลือกเมนูเพื่อเปิดไฟล์ด้วย Text Import Wizard ดังภาพ
GetDataFormText.png
จากนั้นเลือกไฟล์ > Import > Text Delimited > Next > เลือกแบ่งคอลัมน์ด้วย Comma > Finish
Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000
Posted: Mon May 08, 2023 9:48 pm
by March201711
ค่ะ ขอบคุณค่ะ