Page 2 of 3

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 11:30 am
by palmy
เรียนอาจารย์ครับ
จากSheetค้นหา
พอป้อนเลขที่ใบรับรองตั้งแต่ลำดับที่32766เป็นต้นไป
จะไม่สามารถบันทึกเลขที่บัญชีได้
จะติด BUG จะปรับสูตรอย่างไรให้สามารถบันทึกข้อมูลได้มากกว่านี้ครับ

Option Explicit
Sub Master_Click()

End Sub
Sub RecordData()
Dim rSource As Range
Dim i As Integer, j As Integer
Dim rTarget As Range
With Sheets("¤é¹ËÒ")
i = .Range("F3").Value
j = .Range("B10").Value
Set rSource = .Range("F8")
End With
With Sheets("°Ò¹¢éÍÁÙÅ")
Set rTarget = .Range(.Range("D" & i + 1), .Range("D" & i + j))
End With
Application.ScreenUpdating = False
rSource.Copy
rTarget.PasteSpecial xlPasteValues
Application.CutCopyMode = False
MsgBox "Record Complete"
Sheets("°Ò¹¢éÍÁÙÅ").Select
Range("D" & i + 1).Select
Application.ScreenUpdating = False
End Sub

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 1:48 pm
by snasui
:D ส่งไฟล์ล่าสุดมาใหม่พร้อม Zip มาด้วยหากไฟล์มีขนาดเกินกว่า 1 เมก จะได้ทดสอบ แต่คุ้น ๆ ว่า Code ด้านบนไม่ใช่ตัว Update ครับ :mrgreen:

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 4:19 pm
by palmy
6.20 m หลังจาก ZIP ครับ
จะส่งทางเมลล์ให้แล้วกันครับ

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 4:33 pm
by snasui
:D ยินดีครับ :mrgreen:

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 5:24 pm
by palmy
ส่งไฟล์ทางเมลล์แล้วครับ

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 6:27 pm
by palmy
ไม่ค่อยรู้วิธีทำ List รายการข้ามชีตและการใช้ Validation
ไปดูตัวอย่างในหัวข้อ "การดึงข้อมูลข้าม Sheet" แต่ผมใช้ excel2007
อาจารย์ช่วยแนะนำโดยทำ File ภาพให้ดูตัวอย่างได้ไหมครับ
ในSheetหน้าหลัก ช่วงเลขที่ใบรับรอง
F7ถึง F11 ที่อาจารย์ทำให้เป็น List รายการลงมาให้เลือกน่ะครับ
ยังสับสนอยู่ครับ รบกวนด้วยครับ

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 6:49 pm
by palmy
ยังจัดเก็บข้อมูลไม่ได้เหมือนเดิมครับ
ป้อนเลขที่ใบรับรอง
ค้นหาเจอ
พอเราป้อนเลขที่บัญชี
กดจัดเก็บ
ยังติด bug น่ะครับ

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 7:03 pm
by snasui
palmy wrote:ไม่ค่อยรู้วิธีทำ List รายการข้ามชีตและการใช้ Validation
ไปดูตัวอย่างในหัวข้อ "การดึงข้อมูลข้าม Sheet" แต่ผมใช้ excel2007
อาจารย์ช่วยแนะนำโดยทำ File ภาพให้ดูตัวอย่างได้ไหมครับ
ในSheetหน้าหลัก ช่วงเลขที่ใบรับรอง
F7ถึง F11 ที่อาจารย์ทำให้เป็น List รายการลงมาให้เลือกน่ะครับ
ยังสับสนอยู่ครับ รบกวนด้วยครับ
:D การให้ชื่อดูตาม Link นี้ครับ http://www.snasui.com/viewtopic.php?p=2878#p2878

สำหรับการทำ Validation ดูการเข้าเมนูตามด้านภาพล่างครับ :mrgreen:

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 7:13 pm
by snasui
palmy wrote:ยังจัดเก็บข้อมูลไม่ได้เหมือนเดิมครับ
ป้อนเลขที่ใบรับรอง
ค้นหาเจอ
พอเราป้อนเลขที่บัญชี
กดจัดเก็บ
ยังติด bug น่ะครับ
:D เปลี่ยน Code ใหม่ครับ เนื่องจากเดิมเขียนให้รับข้อมูลไม่เกิน 30000 บรรทัด

เปลี่ยน Dim i As Integer เป็น Dim i As Long

Code นี้จะเป็นการวางแบบชุดข้อมูลที่เคยบอกว่าไม่ต้องการใช้ แสดงว่าตอนนี้ต้องการวางเป็นชุดข้อมูลแล้วใช่หรือไม่ครับ :mrgreen:

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 7:23 pm
by palmy
ครับ
เพราะแต่ก่อนระบบงานให้แยกชนิดพันธุ์ข้าว
ทำสัญญาแยกตามใบรับรอง
ตอนนี้ทำรวมกันได้ครับ
เพียงแต่พอเราป้อนข้อมูลเลขที่บัญชีแล้ว
บัญชีจะแสดงผลไปที่เลขที่ใบรับรองนั้นเป็นจุดเริ่มต้นแล้วเรียงลำดับไปจนครบเลขที่ใบรับรอง
แต่ทีนี้ถ้าเราไม่ได้คีย์เลขที่ใบรับรองลำดับแรกสุด มันก็เลยมีการบันทึกเลขที่บัญชีไปจนเกินรายชื่อของตนเองน่ะครับ

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 7:48 pm
by snasui
:D รายงานผลด้วยครับ หลังจากปรับ Code แล้วใช้ได้หรือไม่ครับ :?:

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 10:11 pm
by palmy
จัดเก็บพร้อมแสดงสีให้ด้วยครับ
กำลังลองทำ validation อยู่ครับ
คงใกล้สมบูรณ์แล้ว
มีเรื่องอยากปรึกษอาจารย์ต่ออีกเยอะเลยครับ
ไว้ทำตัวนี้สมบูรณ์ก่อนครับ
อืม..แล้วสีในฐานข้อมูลนี่ จะหายไปไหมครับ

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 10:14 pm
by snasui
:D สีมาจากไหนครับ

ถ้าเป็นสีที่ผมทำไว้ก็เพื่อให้เห็นเด่นชัดเท่านั้น สามารถเอาสีที่เติมไว้ออกได้ครับ :mrgreen:

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 10:27 pm
by palmy
จากสูตรทีอาจารย์ให้ใช้ทำ validation
list รายการ มันขึ้นแค่รายการเดียวให้เลือกครับ มันไม่ขึ้นทุกรายการ
อยากให้ขึ้นทุกรายการของลูกค้าคนนี้น่ะครับ

=OFFSET(ฐานข้อมูล!$E$2,MATCH(หน้าหลัก!$C$2,ฐานข้อมูล!$B$2:$B$65536,0)-1,0,COUNTIF(ฐานข้อมูล!$B$2:$B$65536,หน้าหลัก!$C$2))

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 10:45 pm
by snasui
:D เช็คดูชื่อลูกค้าว่าเหมือนกันหรือไม่ครับ

ผมอธิบายไว้ในคำตอบก่อนหน้านี้แล้วว่าให้ทำการ Clean Data เสียก่อน เพราะว่าชื่อลูกค้าไม่เหมือนกัน ชื่อเดียวกันแต่บางบรรทัดมีวรรคต่อท้าย บางบรรทัดไม่มีวรรคต่อท้าย

สามารถใช้โปรแกรมช่วยตรวจสอบได้ครับ เช่นด้วยสายตาเห็นว่า A10, A11 มีค่าเหมือนกัน แต่เวลาทำ Validation แล้วขึ้นมาแค่ A10 การทดสอบการเท่ากันของสองเซลล์ข้างต้น ที่เซลล์ใด ๆ คีย์

=A10=A11 ถ้าเท่ากันจะได้ผลลัพธ์เป็น True ถ้าไม่เท่ากันจะได้ผลลัพธ์เป็น False

กรณีได้คำตอบเป็น False ให้ Copy A10 มาที่ A11 เพื่อทำให้เท่ากันด้วยวิธีง่าย ๆ ครับ :mrgreen:

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 11:06 pm
by palmy
ได้ผลลัพธ์ เป็น False ครับ
ทีนี้ลองเปลี่ยนตรวจสอบค่าเท่ากันของบัตรประชาชน ได้ผลลัพธ์เป็น True
เลยลองทำรายการ โดยใช้ค่าบัตรประชาชน ก็ยังขึ้นข้อมูลรายการเดียวเช่นเดิมน่ะครับ
จาก
=OFFSET(ฐานข้อมูล!$E$2,MATCH(หน้าหลัก!$C$2,ฐานข้อมูล!$B$2:$B$65536,0)-1,0,COUNTIF(ฐานข้อมูล!$B$2:$B$65536,หน้าหลัก!$C$2))
เป็น
=OFFSET(ฐานข้อมูล!$E$2,MATCH(หน้าหลัก!$C$3,ฐานข้อมูล!$C$2:$C$65536,0)-1,0,COUNTIF(ฐานข้อมูล!$C$2:$C$65536,หน้าหลัก!$C$3))

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 11:12 pm
by snasui
:D สูตรทั้่งหลายที่แสดงมานั้นไม่ผิดครับ การใช้ฟังก์ชั่น CountIf กับตัวเลขที่มีหลักมาก ๆ ผมเคยพบว่าให้คำตอบไม่ถูกต้อง ถ้าเป็นไปได้ให้เลือกใช้จากชื่อลูกค้าจะดีกว่าครับ :mrgreen:

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Fri Nov 26, 2010 11:59 pm
by palmy
หลังตรวจสอบแล้วพบว่าทุกๆชื่อจะมีวรรคต่อท้ายด้วย
อาจารย์ช่วยอธิบายการ clean data ให้ทราบด้วยครับ
การลบวรรคต่อท้ายทุกๆชื่อคงทำไม่ได้แน่
คือไม่เข้าใจวิธีการจะ clean data จริงๆครับ

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Sat Nov 27, 2010 12:06 am
by snasui
:D กรณีต้องการ Clean Data ที่คอลัมน์ B เริ่มที่ B2 เป็นต้นไป ให้หาคอลัมน์ว่าง ๆ สักคอลัมน์ครับ จากนั้นคีย์

=Trim(B2)

Enter > Copy ลงด้านล่างเท่าที่มีข้อมูลใน Column B > จากนั้น Copy ข้อมูลที่ได้นี้ไปวางแบบ Special Value ที่คอลัมน์ B ทับข้อมูลเดิม

ฟังก์ชั่น Trim เป็นการลบวรรคที่เกินจำเป็นทิ้งไปครับ เช่นวรรคต่อท้าย วรรคด้านหน้า วรรคระหว่างคำที่เกินกว่า 1 วรรค :mrgreen:

Re: เลือกข้อมูลที่ระบุไว้แล้วและเลือกป้อนเองก็ได้

Posted: Sat Nov 27, 2010 12:30 am
by palmy
แสดงรายการได้ตามที่ต้องการแล้วครับ
พรุ่งนี้คงได้ทดลองใช้กับงานใหญ่เลยครับ
หลังจากใช้แล้วจะมารายงานผลอีกทีนะครับ
ขอบคุณครับ