กำหนดให้ function right หยุดทำงาน
Posted: Wed Sep 13, 2017 4:47 pm
ตามไฟล์ที่แนบ
เป้าหมาย : ผมต้องการกดรัน macro ครั้งเดียวให้ทำการตัดและปรับแต่งตัวรายงานต้นฉบับให้พอดีกับ
ขนาดกระดาษและสั่งพิมพ์เป็นรายงานตัวใหม่
ปัญหาคือ : ในคอลัมน์ "D" และ "E" ผมต้องการตัดรหัสสินค้าออก ผมใช้ function Right+Len ตัด
รหัสสินค้าออกได้ในคอลัมน์ "E" โดยกำหนดให้หยุดการทำงานเมื่อเจอเซลล์ว่าง ส่วน
คอลัมน์"D" ทำไม่ได้เพราะเซลล์ต่อมาไม่เป็นเซลล์ว่างเลยใช้วิธีแบบที่ใช้ในคอลัมน์ "E"
ไม่ได้อีกทั้งไม่สามารถกำหนดค่าตายตัวไ้ด้ เนื่องจากจำนวนแถวในแต่ละรายงานไม่เท่า
กันตอนนี้ผมใช้วิธีแทรกเซลล์ว่างเข้าไปก่อนค่อยสั่งรัน ได้ผลแต่ไม่ตรงตามความต้องการ
คือ คลิ๊กเดียวเสร็จ
ความต้องการ : อยากทราบว่าพอจะมีวิธีสั่งให้ จำนวนแถวตัดตัวอักษรในคอลัมน์ "D" = จำนวนแถวที่ตัด
ใน "E" หรือไม่
ช่วงคำสั่งที่ผมใช้ตัดตัวอักษรครับ โดยใช้วิธีแทรกเซลล์ว่างก่อนรัน ทacro ครับ
sheet แรกเป็นชีทที่รัน macro แล้วและติดปัญหาไม่ตรงตามความต้องการ ส่วนชีท 2 เป็นต้นฉบับรายงานเป้าหมาย : ผมต้องการกดรัน macro ครั้งเดียวให้ทำการตัดและปรับแต่งตัวรายงานต้นฉบับให้พอดีกับ
ขนาดกระดาษและสั่งพิมพ์เป็นรายงานตัวใหม่
ปัญหาคือ : ในคอลัมน์ "D" และ "E" ผมต้องการตัดรหัสสินค้าออก ผมใช้ function Right+Len ตัด
รหัสสินค้าออกได้ในคอลัมน์ "E" โดยกำหนดให้หยุดการทำงานเมื่อเจอเซลล์ว่าง ส่วน
คอลัมน์"D" ทำไม่ได้เพราะเซลล์ต่อมาไม่เป็นเซลล์ว่างเลยใช้วิธีแบบที่ใช้ในคอลัมน์ "E"
ไม่ได้อีกทั้งไม่สามารถกำหนดค่าตายตัวไ้ด้ เนื่องจากจำนวนแถวในแต่ละรายงานไม่เท่า
กันตอนนี้ผมใช้วิธีแทรกเซลล์ว่างเข้าไปก่อนค่อยสั่งรัน ได้ผลแต่ไม่ตรงตามความต้องการ
คือ คลิ๊กเดียวเสร็จ
ความต้องการ : อยากทราบว่าพอจะมีวิธีสั่งให้ จำนวนแถวตัดตัวอักษรในคอลัมน์ "D" = จำนวนแถวที่ตัด
ใน "E" หรือไม่
Code: Select all
'Past4 Problem
Range("D5").Select
Do Until Selection.Value = ""
Selection.Value = [Cut] 'Formula name(RIGHT+LEN)
Selection.Offset(1, 0).Select
Loop