Page 1 of 1
ช่วยแก้ไขcode ให้สามารถมารถรับค่ามาเก็บใน array แต่ละตัวหน่อยครับ
Posted: Fri Jan 17, 2020 10:23 pm
by nuttanan2140
ต้องการรับค่า จาก textbox มาเก็บไว้ในอาเรย์แต่ละตัวเพื่อจะนำแต่ละตัวไป ทำการ รวมค่า sum โดยต้องการให้เมื่อใส่ค่าแล้วกดบันทึก ช่องจะกฃับมาว่างเพื่อใส่ค่าตัวต่อไปได้
Code: Select all
Private Sub cmbsave_Click()
Dim suminfo(300) As Double
Dim i As Integer
Dim num As Long
Dim info(300) As Variant
num = txtnum
For i = 1 To txtnum
If txtinfo <> "" Then
info(i) = txtinfo
Else
MsgBox "please fill information", vbOKOnly + vbInformation, "information"
txtinfo.BackColor = vbRed
End If
Next i
suminfo = 0
For i = 1 To txtnum
suminfo = suminfo + info(i)
Next i
label4 = suminfo
End Sub
Re: ช่วยแก้ไขcode ให้สามารถมารถรับค่ามาเก็บใน array แต่ละตัวหน่อยครับ
Posted: Fri Jan 17, 2020 11:16 pm
by snasui

กรุณาแนบไฟล์ Excel ที่เขียน Code นี้เอาไว้แล้วมาด้วย จะได้สะดวกในการตอบของเพื่อนสมาชิกครับ
Re: ช่วยแก้ไขcode ให้สามารถมารถรับค่ามาเก็บใน array แต่ละตัวหน่อยครับ
Posted: Sat Jan 18, 2020 2:53 pm
by nuttanan2140
นี่ครับ ข้อมูลที่ถามอยู่ใน userform ที่ชื่อว่า direc ครับ
Re: ช่วยแก้ไขcode ให้สามารถมารถรับค่ามาเก็บใน array แต่ละตัวหน่อยครับ
Posted: Sat Jan 18, 2020 4:28 pm
by snasui

ลองลำดับการทำงาน ยกตัวอย่างค่าที่คีย์ จำนวนครั้งที่ทำ ตัวอย่างคำตอบที่ต้องการมาด้วยจะได้ช่วยทดสอบให้ได้
ควรแจ้งว่า Code อยู่ใน Class ใด Module ใด จะได้เข้าถึงปัญหาได้โดยไวครับ
Re: ช่วยแก้ไขcode ให้สามารถมารถรับค่ามาเก็บใน array แต่ละตัวหน่อยครับ
Posted: Sat Jan 18, 2020 10:45 pm
by nuttanan2140
ช่อง textbox ด้านบนจะรับค่าจำนวนขอตัวเลขที่ต้องการจะบันทึก เช่น 10 ค่า ส่วนtextbox ด้านล่างจะรับค่าตัวเลขแต่ละตัว เช่น 10,3,5,11
โดนจะต้องใส่ตัวเลขที่ละค่า แล้วจึงกดบันทึกแต่ละครั้ง เมื่อกดปุ่มบันทึก โปรแกรมจะทำการรันเก็บค่านั้นๆ ไว้ในอาเรย์แต่ละอาเรย์ ไปเรื่อยๆ หลังจากนั้นก็จะทำการคำนวณค่า sum ของทั้งอาเรย์ออกมา
code จะอยู่ใน form ในปุ่ม บันทึกครับ ขอบคุณครับ

Re: ช่วยแก้ไขcode ให้สามารถมารถรับค่ามาเก็บใน array แต่ละตัวหน่อยครับ
Posted: Sun Jan 19, 2020 12:41 am
by snasui

ตัวอย่าง Code ครับ
Code: Select all
Dim info(300) As Variant
Dim l As Long
Private Sub cmbsave_Click()
Dim suminfo As Double
Dim i As Integer
If l >= CLng(txtnum.Value) Then
MsgBox "Not record"
Exit Sub
End If
If txtinfo <> "" Then
l = l + 1
info(l) = CLng(txtinfo)
Else
MsgBox "please fill information", vbOKOnly + vbInformation, "information"
txtinfo.BackColor = vbRed
End If
suminfo = 0
For i = 1 To UBound(info)
suminfo = suminfo + info(i)
Next i
label4 = suminfo
End Sub
Re: ช่วยแก้ไขcode ให้สามารถมารถรับค่ามาเก็บใน array แต่ละตัวหน่อยครับ
Posted: Mon Jan 20, 2020 12:20 am
by nuttanan2140
code สามารถใช้ได้เลยครับ ขอบคุณมากนะครับ
