Page 1 of 1
การแยกคอลัมน์ด้วยเครื่องหมาย (Text to column)
Posted: Wed Nov 29, 2017 10:57 am
by aapichaya
Module 1 Import ข้อมูลลงในsheet2
Module 2 เป็นการคลีนดาต้า อ่าค่ะ ตอนนี้ติดปัญหาการทำ Text to column ต้องการทำ text to column โดย Delimitersด้วยเครื่องหมาย " | " ในColumn L Destination column T ไปทางขวา ค่ะ
การทำ Text to column ข้อมูลชุดเเรกไม่มีปัญหา เเต่ชุดที่สองจะเกิด MsgBoxถามว่าต้องการจะ Replace มั้ยอ่ะค่ะ (ไม่ต้องการให้Replace แต่ต้องการให้ destination ต่อจากบรรทัดสุดท้ายของ Column Tและไปทางขวา ค่ะ)
Re: การแยกคอลัมน์ด้วยเครื่องหมาย (Text to column)
Posted: Wed Nov 29, 2017 5:47 pm
by logic
อ่าค่ะ เป็นภาษาแชท แก้ก่อนนะครับ ผิดกฎข้อ 1 ครับ
Re: การแยกคอลัมน์ด้วยเครื่องหมาย (Text to column)
Posted: Thu Nov 30, 2017 12:01 pm
by aapichaya
aapichaya wrote:Module 1 Import ข้อมูลลงในsheet2
Module 2 เป็นการคลีนดาต้า ตอนนี้ติดปัญหาการทำ Text to column ต้องการทำ text to column โดย Delimitersด้วยเครื่องหมาย " | " ในColumn L Destination column T ไปทางขวา
การทำ Text to column ข้อมูลชุดเเรกไม่มีปัญหา เเต่ชุดที่สองจะเกิด MsgBoxถามว่าต้องการจะ Replaces หรือไม่ (คือไม่ต้องการให้Replace แต่ต้องการให้ destination ต่อจากบรรทัดสุดท้ายของ Column Tและไปทางขวา )
Re: การแยกคอลัมน์ด้วยเครื่องหมาย (Text to column)
Posted: Fri Dec 01, 2017 6:45 am
by snasui

ตัวอย่างการปรับ Code ครับ
Code: Select all
'Other code
'Texttocolumn
Range("L2:L" & Worksheets("Sheet2").UsedRange.Rows.Count).Select
Selection.TextToColumns Destination:=Range("T2"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="|", FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
'Other code
Re: การแยกคอลัมน์ด้วยเครื่องหมาย (Text to column)
Posted: Mon Dec 11, 2017 2:39 pm
by aapichaya
ขอบคุณมากค่ะ การอัพโหลดข้อมูลและรันโค้ดรอบเเรกไม่มีปัญหาค่ะ เเต่เมื่ออัพโหลดข้อมูลและรันโค้ดรอบที่สอง destinstion ของการทำ text to column จะเปลี่ยนไปค่ะทำให้แยกข้อมูลไม่ได้
จากครั้งแรก (ข้อมูลอยู่ในRow ที่2-14)
Code: Select all
Range("L2:L" & Worksheets("Sheet2").UsedRange.Rows.Count).Select
Selection.TextToColumns Destination:=Range("T2"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="|", FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
ต้องการ: ให้ Range และ destination เริ่มจากบรรทัดสุดท้ายค่ะ(ข้อมูลบรรทัดสุดท้ายอยู่ที่ 15-27)
Code: Select all
Range("L15:L" & Worksheets("Sheet2").UsedRange.Rows.Count).Select
Selection.TextToColumns Destination:=Range("T15"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="|", FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
* การอัพโหลดแต่ละครั้งจำนวน Row ไม่เท่ากัน
Re: การแยกคอลัมน์ด้วยเครื่องหมาย (Text to column)
Posted: Mon Dec 11, 2017 5:42 pm
by snasui

ให้เขียนตัวแปรเพื่อเก็บค่า
บรรทัดว่างหลังบรรทัดที่มีข้อมูลก่อนที่จะวางข้อมูล เพื่อนำไปกำหนดค่าเริ่มต้นให้กับเซลล์ที่จะทำ Text to columns ครับ
ยกตัวอย่างเช่น กำหนดค่าให้ x คือบรรทัดว่างหลังบรรทัดสุดท้ายที่มีข้อมูล
x = range("a" & rows.count).end(xlup).row + 1
เมื่อวางข้อมูลแล้วค่อยทำ Text to columns โดยนำตัวแปร x มาใช้ เช่น
range("l" & x,range("l" & x).end(xldown)).select
selection.texttocolumns destination...
อักขระ ... แทน Code เดิมครับ
Re: การแยกคอลัมน์ด้วยเครื่องหมาย (Text to column)
Posted: Wed Dec 13, 2017 1:26 pm
by aapichaya
เมื่อImport file เพิ่ม ในส่วนของ text to column จะแทนที่destination เดิมค่ะ (Destination:=Range("$T2"))
ต้องการให้ข้อมูลที่ทำ text to column ต่อจาก ข้อมูลที่importชุดแรก
Code: Select all
Selection.TextToColumns Destination:=Range("$T2"), DataType:=xlDelimited, _
Re: การแยกคอลัมน์ด้วยเครื่องหมาย (Text to column)
Posted: Thu Dec 14, 2017 6:19 am
by snasui

ตัวอย่างการปรับ Code ครับ
นำตัวแปร b ซึ่งเป็นค่าบรรทัดมาใช้ และระบุคอลัมน์ที่จะวางข้อมูลให้กับ Object Cells
Code: Select all
'Other code
Selection.TextToColumns Destination:=Cells(b, "T"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="|", FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
'Other code
Re: การแยกคอลัมน์ด้วยเครื่องหมาย (Text to column)
Posted: Thu Dec 14, 2017 1:35 pm
by aapichaya
ขอบคุณมากค่ะ