Page 1 of 1

สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Wed Jan 07, 2015 9:42 pm
by koke
คือผมอยากสร้าง userform โดยกำหนดตัวเลขขึ้นมาและมีตัวเลือกว่าจะเลือกจากน้อยไปมาก หรือ มากไปน้อย
จะทำอย่างไรครับ
กรุณาตอบด้วยนะครับ
ขอบคุณครับ

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Wed Jan 07, 2015 10:41 pm
by snasui
:D การเขียน VBA จำเป็นต้องศึกษามาก่อนตามลำดับ และต้องเขียนสิ่งที่ต้องการมาเองให้ถามเฉพาะที่ติดปัญหาเท่านั้น อ่านกฎข้อ 5 ด้านบนประกอบครับ :roll:

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Thu Jan 08, 2015 8:09 pm
by koke
จากไฟล์ข้อมูล ผมเป็นมือใหม่พยายามหัดเขียน แต่ยังมีพื้นฐานไม่ดีเลยแสดงผลไม่ได้ อาจารย์กรุณาช่วยด้วยนะครับ อาจารย์เขียนหนังสือหรือมีแนะนำบ้างไหมครับ ผมต้องใช้ในการทำงานด้วย เลยอยากรบกวนหน่อยครับ
ขอบคุณครับ

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Thu Jan 08, 2015 8:34 pm
by koke
ถ้าเป็น visual basic สามารถใช้ array.sort(a) ได้ สำหรับ VBA สามารถทำได้ไหมครับ

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Thu Jan 08, 2015 9:37 pm
by snasui
:D ช่วยอธิบายมาอีกรอบครับว่าต้องการให้แสดงผลที่ไหนอย่างไร จะได้สะดวกในการทำความเข้าใจ

สำหรับ Array ใน VBA ไม่มี Function Sort เหมือน VB หากจะ Sort ต้องเขียน Sort เองครับ

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Sat Jan 10, 2015 2:04 pm
by koke
vba.xlsm

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Sat Jan 10, 2015 7:25 pm
by snasui
:D ตัวอย่าง Code จากมากไปหาน้อย หากเรียงจากน้อยไปหามากใช้ Small แทน Large ครับ

Code: Select all

Private Sub max_Click()
    Dim a(3) As Variant
    Dim i As Integer
    Dim t() As Variant
    a(0) = 1
    a(1) = 3
    a(2) = 8
    a(3) = 6
    For i = 0 To UBound(a)
       ReDim Preserve t(i)
       t(i) = Application.Large(a, i + 1)
    Next i
    TextBox1.Text = Join(t, ",")
End Su
อีกตัวอย่างการเรียงลำดับข้อมูลด้วย VBA ดูจาก Link นี้ครับ wordpress/character-order/

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Sun Jan 11, 2015 1:53 pm
by koke
กราบขอบพระคุณอาจารย์เป็นอย่างสูงครับ :cp:
บุญคุณนี้ต้องทดแทน
(ทำไมมันมี 0 ขึ้นมาครับ)

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Sun Jan 11, 2015 8:51 pm
by snasui
:D ไม่ทราบว่าขึ้น 0 ตรงไหน ลองแนบไฟล์ล่าสุด อธิบายปัญหาที่เป็นและอธิบายคำตอบที่ต้องการ จะได้เข้าถึงปัญหาโดยไวครับ

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Sun Jan 11, 2015 9:39 pm
by koke
Untitled1.png
vba.xlsm

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Sun Jan 11, 2015 9:48 pm
by snasui
:D เพราะกำหนดสมาชิก Array ไว้ 11 ตัว (จาก Dim a(1 To 10) As Integer) มันก็เลยแสดง 11 ตัว ใช้จริงเท่าไรก็ควรกำหนดไว้เท่านั้นครับ

Re: สอบถามการเขียนโปรแกรม เรียงลำดับเลขจากมากไปน้อย น้อยไปมาก

Posted: Sun Jan 11, 2015 10:14 pm
by koke
ขอบพระคุณมากครับ