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

ส่งไฟล์ล่าสุดมาใหม่พร้อม Zip มาด้วยหากไฟล์มีขนาดเกินกว่า 1 เมก จะได้ทดสอบ แต่คุ้น ๆ ว่า Code ด้านบนไม่ใช่ตัว Update ครับ

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

ยินดีครับ

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 รายการลงมาให้เลือกน่ะครับ
ยังสับสนอยู่ครับ รบกวนด้วยครับ

การให้ชื่อดูตาม Link นี้ครับ
http://www.snasui.com/viewtopic.php?p=2878#p2878
สำหรับการทำ Validation ดูการเข้าเมนูตามด้านภาพล่างครับ

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

เปลี่ยน Code ใหม่ครับ เนื่องจากเดิมเขียนให้รับข้อมูลไม่เกิน 30000 บรรทัด
เปลี่ยน
Dim i As Integer เป็น
Dim i As Long
Code นี้จะเป็นการวางแบบชุดข้อมูลที่เคยบอกว่าไม่ต้องการใช้ แสดงว่าตอนนี้ต้องการวางเป็นชุดข้อมูลแล้วใช่หรือไม่ครับ

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

รายงานผลด้วยครับ หลังจากปรับ Code แล้วใช้ได้หรือไม่ครับ

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

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

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

เช็คดูชื่อลูกค้าว่าเหมือนกันหรือไม่ครับ
ผมอธิบายไว้ในคำตอบก่อนหน้านี้แล้วว่าให้ทำการ Clean Data เสียก่อน เพราะว่าชื่อลูกค้าไม่เหมือนกัน ชื่อเดียวกันแต่บางบรรทัดมีวรรคต่อท้าย บางบรรทัดไม่มีวรรคต่อท้าย
สามารถใช้โปรแกรมช่วยตรวจสอบได้ครับ เช่นด้วยสายตาเห็นว่า A10, A11 มีค่าเหมือนกัน แต่เวลาทำ Validation แล้วขึ้นมาแค่ A10 การทดสอบการเท่ากันของสองเซลล์ข้างต้น ที่เซลล์ใด ๆ คีย์
=A10=A11 ถ้าเท่ากันจะได้ผลลัพธ์เป็น True ถ้าไม่เท่ากันจะได้ผลลัพธ์เป็น False
กรณีได้คำตอบเป็น False ให้ Copy A10 มาที่ A11 เพื่อทำให้เท่ากันด้วยวิธีง่าย ๆ ครับ

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

สูตรทั้่งหลายที่แสดงมานั้นไม่ผิดครับ การใช้ฟังก์ชั่น CountIf กับตัวเลขที่มีหลักมาก ๆ ผมเคยพบว่าให้คำตอบไม่ถูกต้อง ถ้าเป็นไปได้ให้เลือกใช้จากชื่อลูกค้าจะดีกว่าครับ

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

กรณีต้องการ Clean Data ที่คอลัมน์ B เริ่มที่ B2 เป็นต้นไป ให้หาคอลัมน์ว่าง ๆ สักคอลัมน์ครับ จากนั้นคีย์
=Trim(B2)
Enter > Copy ลงด้านล่างเท่าที่มีข้อมูลใน Column B > จากนั้น Copy ข้อมูลที่ได้นี้ไปวางแบบ Special Value ที่คอลัมน์ B ทับข้อมูลเดิม
ฟังก์ชั่น Trim เป็นการลบวรรคที่เกินจำเป็นทิ้งไปครับ เช่นวรรคต่อท้าย วรรคด้านหน้า วรรคระหว่างคำที่เกินกว่า 1 วรรค

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