Page 1 of 1

add ข้อมูลลง listbox

Posted: Fri Jan 20, 2012 2:38 pm
by pepper_dog
รบกวนสอบถามครับ เรื่องการ add ข้อมูลลง listbox

ถ้าข้อมูลจาก sheet1(data ไม่สามารถลบรายการใดทิ้งได้) มีข้อมูลซ้ำ และต้องการ add ลง listbox ที่ sheet2

สามารถตัด dup ได้ยังไงครับ

ถ้าเป็นคำสั่ง vba ใช้งานยังไงครับสำหรับการทำงาน listbox

Re: add ข้อมูลลง listbox

Posted: Fri Jan 20, 2012 2:42 pm
by snasui
:D การใช้ VBA จำเป็นต้องเขียนมาก่อนครับ ติดตรงไหนก็มาถามกันได้เรื่อย ๆ ครับ

Re: add ข้อมูลลง listbox

Posted: Fri Jan 20, 2012 3:00 pm
by pepper_dog
ครับผม

ดังนี้นะครับ

1. ที่ sheet "paymentbycus" ให้ listbox ดึงข้อมูลรหัสลูกค้าจาก sheet "data" ณ วันปัจจุบันมาแสดง โดยตัด dup รหัสที่ซ้ำออกนะครับ

2.หลังจากเลือก รหัสลูกค้าแล้ว ทำการกดปุ่ม "แสดงรายการ" ให้นำข้อมูลมาแสดงที่หน้า paymentbycus นะครับ

ผมแนบไฟล์มาให้ครับ code vba จะทำที่หน้า sheet "paymentbycus" เลยครับ

รบกวนช่วยหน่อยครับ
ขอบคุณมากครับ

Re: add ข้อมูลลง listbox

Posted: Fri Jan 20, 2012 4:03 pm
by snasui
:D ผมเขียน Code ตัวอย่างมาตามด้านล่างครับ

Code: Select all

Sub RemoveDup()
    Sheets("paymentbycus").Range("O:O") = Sheets("data").Range("B:B").Value
    With Sheets("paymentbycus")
        .Range("O:O").RemoveDuplicates Columns:=1, Header:=xlYes
        .Range("O2", .Range("O" & Rows.Count).End(xlUp)).Name = "Code"
    End With
End Sub
จากนั้นคลิกขวาในที่ ComboBox แล้วกดหนด Input range: ตามภาพด้านล่าง

Re: add ข้อมูลลง listbox

Posted: Fri Jan 20, 2012 4:30 pm
by pepper_dog
:D ขอขอบคุณพี่มากๆนะครับ

ไว้ติดปัญหาอะไรจะรบกวนสอบถามใหม่นะครับ

ขอบคุณอีกครั้งครับ :D

Re: add ข้อมูลลง listbox ** สอบถามเพิ่มเติมครับ

Posted: Mon Jan 23, 2012 11:59 am
by pepper_dog
:D พี่ครับ ถามต่ออีกหน่อยครับ

ถ้าต้องการให้ ComboBox ที่ได้มา sort จากน้อยไปหามากจะต้อง เขียนสูตรยังไงครับ

และถ้าเลือก รหัสใน ComboBox แล้วให้มาแสดงที่ช่อง D1 จะต้องทำยังไงครับ เพราะเวลาที่แสดงไม่ตรงกับที่เลือกครับ

ผมแนบไฟล์เพิ่มเติมมานะครับ

ขอบคุณครับ

Re: add ข้อมูลลง listbox

Posted: Mon Jan 23, 2012 5:42 pm
by snasui
:D ลองบันทึก Macro การจัดเรียงข้อมูลจากน้อยไปหามากและปรับ Code เข้ากับ Code ที่ผมเขียนให้ไปดูก่อน ติดตรงไหนค่อยมาถามกันต่อครับ

Re: add ข้อมูลลง listbox

Posted: Tue Jan 24, 2012 10:38 am
by pepper_dog
ขอบคุณครับ ตอนนี้ผม sort ได้แล้วครับ โดยใช้ function หาจากในนี้นะครับ แล้วเอามาแก้ไขนิดหน่อย

ขอบคุณครับผม ตอนนี้เหลือเรื่อง combobox ค่าที่โชว์ไม่ตรงกัน กำลังหาวิธีอยู่ ถ้าไม่ไ้ด้จริงจะสอบถามนะครับ

Sub SortData()
Dim r As Range
With Sheets("paymentbycus")
Set r = .Range("O2", .Range("O" & Rows.Count).End(xlUp))
End With
r.Sort Key1:=Range("O2"), Order1:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _
xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
DataOption3:=xlSortNormal
End Sub