Page 1 of 1

Macro : อยากให้ค่า Sum โชว์ในกล่อง Total

Posted: Thu Nov 07, 2019 8:50 am
by wisitsakbenz
เรียน อาจารย์ครับ

ใส่ค่าตัวเลข ในกล่อง 1 - 4 อยากให้โชว์ผลรวมก่อน Save ว่าได้เท่าไหร่

ต้องปรับ Code อย่างไรบ้างครับ ขอบคุณครับ

Re: Macro : อยากให้ค่า Sum โชว์ในกล่อง Total

Posted: Thu Nov 07, 2019 8:54 pm
by snasui
:D ตัวอย่าง Code ครับ

Code: Select all

Private Sub TextBox100_AfterUpdate()
    Call TotalVal
End Sub

Private Sub TextBox101_AfterUpdate()
    Call TotalVal
End Sub

Private Sub TextBox102_AfterUpdate()
    Call TotalVal
End Sub

Private Sub TextBox103_AfterUpdate()
    Call TotalVal
End Sub

Sub TotalVal()
    Dim v As Double, arrTb As Variant
    Dim i As Integer
    arrTb = Array("TextBox100", "TextBox101", "TextBox102", "TextBox103")
    For i = 0 To UBound(arrTb)
        v = Val(Me.Controls(arrTb(i)).Text) + v
    Next i
    Me.TextBox104.Text = v
End Sub

Re: Macro : อยากให้ค่า Sum โชว์ในกล่อง Total

Posted: Fri Nov 08, 2019 7:52 am
by wisitsakbenz
ได้แล้วครับ อาจารย์ snasui ขอบคุณมากครับ

Re: Macro : อยากให้ค่า Sum โชว์ในกล่อง Total

Posted: Fri Nov 08, 2019 4:01 pm
by wisitsakbenz
สอบถามอาจารย์ครับ ตั้งค่า format ให้กับ Textbox แล้วผลบวกที่ได้ผิดครับ

รบกวนอาจารย์อีกครั้งครับ ขอบคุณครับ

Re: Macro : อยากให้ค่า Sum โชว์ในกล่อง Total

Posted: Fri Nov 08, 2019 7:59 pm
by snasui
:D เปลี่ยนเครื่องหมายคอมม่าให้กลายเป็นค่าว่างด้วยฟังก์ชั่น Replace ครับ ลักษณะจะเป็น v = Val(Replace(...))

ลองทำมาเองดูก่อน ติดแล้วค่อยถามกันต่อ ศึกษา Replace จากที่นี่ครับ https://www.techonthenet.com/excel/form ... ce_vba.php

Re: Macro : อยากให้ค่า Sum โชว์ในกล่อง Total

Posted: Mon Nov 11, 2019 10:08 am
by wisitsakbenz
v = Val(Replace("Me.Controls(arrTb(i)).Text", ",", "")) + v

ลองปรับเป็นแบบนี้แล้วไม่ได้ครับอาจารย์ ไม่แน่ใจว่าผิดตรงไหน
ผมเพิ่งมาศึกษา VB รบกวนอาจารย์ชี้แนะด้วยครับ ขอบคุณมากครับ

Re: Macro : อยากให้ค่า Sum โชว์ในกล่อง Total

Posted: Mon Nov 11, 2019 11:03 am
by wisitsakbenz
ได้แล้วครับอาจารย์ snasui ขอบคุณมากครับ