:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser
🪷 คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ

Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000

ฟอรัมถาม-ตอบ Power Query, PivotTable, Power Pivot, Data Model, Chart, Dashboard
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000

#1

Post 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
Attachments
book.csv
(713 Bytes) Downloaded 3 times
ExportCSV.xlsm
(17.97 KiB) Downloaded 3 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31191
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000

#2

Post by snasui »

:D เป็นความต้องการที่ขัดแย้งกันในตัวเองครับ :shock:

การที่ขึ้นเครื่องหมาย # เพราะความกว้างเซลล์ไม่พอ แต่กลับมีข้อจำกัดว่าไม่สามารถปรับความกว้างคอลัมน์ได้ มีเหตุผลใดจึงต้องกำหนดเช่นนั้น :?:

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

เบื้องต้นหากต้องการให้เห็นตัวเลขครบก็ต้องปรับ Font ให้มีขนาดเล็กลงจนกว่าจะมองเห็นตัวเลข แต่หากปรับจนสุดแล้วยังมองไม่เห็นก็ไม่สามารถช่วยได้ครับ
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000

#3

Post by March201711 »

ค่ะ พอดีว่าผู้รัยไฟล์จาก csvบอกว่าต้งมานั่งปรับมือขยาย column ทุกครั้ง ทำให้เค้าเสียเวลาเพราะไม่เห็นตัวเลขและ ตัวเลขขึ้น ## หรือ E+00 ตลอด จึงแยากปรับโดยลองใช้ code marco เอง แต่ก็ทำไม่ได้น่ะค่ะ ถ้าปรับไม่ได้ก็ไม่เป๋นไรค่ะขอบคุณค่ะ
loki99
Member
Member
Posts: 1
Joined: Fri May 05, 2023 4:42 pm
Excel Ver: 2016

Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000

#4

Post 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
User avatar
snasui
Site Admin
Site Admin
Posts: 31191
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000

#5

Post by snasui »

March201711 wrote: Fri May 05, 2023 2:40 pm ข้อมูลมาจากระบบไม่สามารถเปลี่ยนหรือขยาย column ได้
March201711 wrote: Sat May 06, 2023 5:52 am พอดีว่าผู้รัยไฟล์จาก csvบอกว่าต้งมานั่งปรับมือขยาย column ทุกครั้ง

:D เมื่อต้องขยายคอลัมน์เองแสดงว่าที่จริงแล้วไม่ใช่ปัญหาว่าขยายคอลัมน์ไมได้

การเปิดให้ขยายคอลัมน์ได้ไม่ใช่ไปเปิดด้วยวิธี 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
GetDataFormText.png (11.72 KiB) Viewed 35 times

จากนั้นเลือกไฟล์ > Import > Text Delimited > Next > เลือกแบ่งคอลัมน์ด้วย Comma > Finish
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: Export ข้อมูล file เป็น csv แล้วตัวเลข ขึ้น #### และ เป็น E+000

#6

Post by March201711 »

ค่ะ ขอบคุณค่ะ
Post Reply