:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

Msg แจ้งเตือน

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Msg แจ้งเตือน

#1

Post by Leng »

ยากสอบถามครับว่าถ้าผมต้องการทำสแกนและให้แจ้งเตือนหากข้อมูลเกิน โดยโค๊ดที่ผมใช้คือ

Code: Select all

If Range("L2:L11").Value < Range("M2:M11").Value Then
If MsgBox(" µéͧ¡Ò÷ӵèÍËÃ×ÍäÁè ", vbYesNo + vbQuestion + vbDefaultButton2, " Close and Save ") = 6 Then
Call Sample2
MsgBox "TOTAL NUMBER ERROR"
  Exit Sub
End If
End If
แต่ปัญหาคือพอโค๊ดอื่นที่สแกนไม่เกินจำนวนที่ตั้งไว้ก็ไม่สามารถสแกนได้ครับ
คือสิ่งที่ต้องการคือ cloumn M2:M11 ต้องมีค่าไม่เกินจำนวน cloumn L2:L11 หากเกิน ยากให้ มี msg แจ้งเตือนครับ
L2<M2 หากจำนวนใน M2 มีค่ามากกว่า L2 ให้แจ้งเตือน
L3<M2 หากจำนวนใน M3 มีค่ามากกว่า L3 ให้แจ้งเตือน
L4<M2 หากจำนวนใน M4 มีค่ามากกว่า L4 ให้แจ้งเตือน
L5<M2 หากจำนวนใน M5 มีค่ามากกว่า L5 ให้แจ้งเตือน
L6<M2 หากจำนวนใน M6 มีค่ามากกว่า L6 ให้แจ้งเตือน
L7<M2 หากจำนวนใน M7 มีค่ามากกว่า L7 ให้แจ้งเตือน
L8<M2 หากจำนวนใน M8 มีค่ามากกว่า L8 ให้แจ้งเตือน
L9<M2 หากจำนวนใน M9 มีค่ามากกว่า L9 ให้แจ้งเตือน
L10<M2 หากจำนวนใน M10 มีค่ามากกว่า L10 ให้แจ้งเตือน
L11<M2 หากจำนวนใน M11 มีค่ามากกว่า L11 ให้แจ้งเตือน
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#2

Post by snasui »

:D แนบ Code นี้มากับไฟล์ตัวอย่างด้วยจะได้ช่วยทดสอบได้ครับ
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Re: Msg แจ้งเตือน

#3

Post by Leng »

:oops:
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#4

Post by snasui »

:D ตัวอย่างการ Loop เข้าไปในแต่ละเซลล์ของ L2:L11 เพื่อเช็คว่ามีค่าใดน้อยกว่าค่าในบรรทัดเดียวกันของคอลัมน์ M บ้าง ตามด้านล่างครับ

Code: Select all

'Other code
For Each Rng In Range("l2:l11")
    If Rng.Value < Rng.offet(0, 1).Value Then
        If MsgBox(" ต้องการทำต่อหรือไม่ ", vbYesNo + vbQuestion + vbDefaultButton2, " Close and Save ") = 6 Then
            Call Sample2
            MsgBox "TOTAL NUMBER ERROR"
            Exit Sub
        End If
    End If
Next rmg
'Other code
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Re: Msg แจ้งเตือน

#5

Post by Leng »

ผมได้นำโค๊ดที่อาจารย์ให้ไปใส่แล้วครับแต่ไม่สามารถ run ได้ครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#6

Post by snasui »

:D ไม่พบว่ามีการนำ Code ที่ผมตอบไปใช้ในไฟล์ที่แนบมาครับ

หรือเขียนไว้ที่ตรง Sub ไหน แจ้งรายละเอียดพร้อมลำดับวิธีทดสอบให้เห็นปัญหาที่เกิดขึ้นมาด้วยครับ
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Re: Msg แจ้งเตือน

#7

Post by Leng »

ต้องขอโทษด้วยครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#8

Post by snasui »

:D นอกจากการแนบไฟล์ที่มี Code แล้ว ช่วยให้รายละเอียดมาตามที่ผมแจ้งไปในโพสต์ #6 ด้วยครับ
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Re: Msg แจ้งเตือน

#9

Post by Leng »

ตรงนี้ครับต่อจาก sumif
Private Sub TextBox2_AfterUpdate()
If Me.TextBox2.Text = "" Then Exit Sub
emptyrow = WorksheetFunction.CountA(Range("A:A")) + 1
With Worksheets("Barcode")

If Me.TextBox2.Text = "" Then Exit Sub
If WorksheetFunction.CountIf(Sheets("Barcode").Range("K2:N50"), Me.TextBox2.Value) = 0 Then
Call Sample2
'Me.TextBox2.Value = ""
MsgBox "Not found."
Exit Sub
End If

With Me
.TextBox4 = Application.WorksheetFunction.VLookup(CLng(Me.TextBox2), Sheets("Barcode").Range("K2:N50"), 4, 0)
End With

.Cells(emptyrow, 1).Value = TextBox1.Value 'date
.Cells(emptyrow, 2).Value = ComboBox3.Value 'factory
.Cells(emptyrow, 3).Value = TextBox5.Value 'stlye
.Cells(emptyrow, 4).Value = TextBox3.Value 'colors
.Cells(emptyrow, 5).Value = ComboBox4.Value 'size
.Cells(emptyrow, 6).Value = ComboBox2.Value 'note
.Cells(emptyrow, 7).Value = ComboBox1.Value 'name
.Cells(emptyrow, 8).Value = TextBox2.Value 'barcode
.Cells(emptyrow, 9).Value = TextBox4.Value 'number

.Range("m2").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K2"), Range("I2:I500"))
.Range("m3").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K3"), Range("I2:I500"))
.Range("m4").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K4"), Range("I2:I500"))
.Range("m5").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K5"), Range("I2:I500"))
.Range("m6").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K6"), Range("I2:I500"))
.Range("m7").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K7"), Range("I2:I500"))
.Range("m8").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K8"), Range("I2:I500"))
.Range("m9").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K9"), Range("I2:I500"))
.Range("m10").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K10"), Range("I2:I500"))
.Range("m11").Value = WorksheetFunction.SumIf(Range("H2:H500"), Range("K11"), Range("I2:I500"))

For Each Rng In Range("l2:l11")
If Rng.Value < Rng.offet(0, 1).Value Then
If MsgBox(" µéͧ¡Ò÷ӵèÍËÃ×ÍäËÁ ", vbYesNo + vbQuestion + vbDefaultButton2, " Close and Save ") = 6 Then
Call Sample2
MsgBox "TOTAL NUMBER ERROR"
Exit Sub
End If
End If
Next rmg



Dim strRowSource As String
With ListBox2
strRowSource = .RowSource
.RowSource = vbNullString
.RowSource = strRowSource
End With

Dim lsRow As Long
With Sheets("Barcode")
lsRow = .Range("a" & .Rows.Count).End(xlUp).Row
End With
ListBox1.RowSource = Sheets("Barcode").Range("A2:i" & lsRow).Address(external:=True)
With ListBox1
.ListIndex = .ListCount - 1
.Selected(.ListCount - 1) = True
End With
End With
End Sub
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#10

Post by snasui »

:D สิ่งที่ตอบมาไม่ใช่สิ่งที่แจ้งไป ผมแจ้งให้ลำดับวิธีทดสอบเพื่อให้เกิดปัญหาครับ

สำหรับการโพสต์ Code กรุณาโพสต์ Code ให้แสดงเป็น Code เพื่อสะดวกในการอ่านดูกฎการใช้บอร์ดข้อ 5 ด้านบนประกอบครับ

Code ที่ผมตอบไปมีคำผิด

ให้แก้ If Rng.Value < Rng.offet(0, 1).Value Then เป็น If Rng.Value < Rng.offset(0, 1).Value Then ครับ
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Re: Msg แจ้งเตือน

#11

Post by Leng »

ต้องขอโทษด้วยครับ สามารถแจ้งเตือนได้แล้วครับ
แต่ปัญหาคือ พอใส่โค๊ด อื่นที่ไม่เกินจำนวนที่ตั้งไว้ ก็ จะมี msg ขึ้นมาตลอดเลยครับ
สิ่งที่ต้องการคือ
ถ้าโค๊ดใน cloumn M มีผลรวมมากกว่า cloumn L ให้แจ้งเตือนครับเช่น

โค๊ด 123 ต้อง มีจำนวน แค่ 2 แล้วผลรวมของ cloumn M ต้องไม่เกิน cloumn L ครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#12

Post by snasui »

:D Code นั้นถูกต้องแล้วครับ

เป็นการเช็คว่า L น้อยกว่า M หรือไม่ ถ้าน้อยกว่าให้แจ้งเตือน มีค่าเท่ากับตรวจสอบว่า M มากกว่า L หรือไม่ ถ้ามากกว่าให้แจ้งเตือน

ที่บอกว่าผิดพลาด ทดสอบอย่างไรครับ ช่วยลำดับวิธีการทดสอบมาเป็นขั้นตอน คลิกอะไร กรอกค่าใด ตรงไหน อย่างไร สิ่งเหล่านี้ต้องแจ้งมาด้วยเสมอครับ
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Re: Msg แจ้งเตือน

#13

Post by Leng »

ขั้นตอนการทำงานครับ
1.ให้ใส่ข้อมูล จาก userfrom 2 โดยช่องแลกให้กำหนดโค๊ด และช่องที่ 2 กำหนดจำนวนของโค๊ดนั้นๆ ครับ

2.เมื่อเปิดหน้า userfrom 1 มา แล้วทำการ scan bacode bacode ต้องตรงกับข้อที่ 1 ที่กำหนดโค๊ดไว้ใน Userfrom2

3.โค๊ดแต่ละโค๊ดที่ scan ใน userfrom 1 จะทำการ sumif ไว้และเด้งโชว์ใน list box ตลอดครับ

แต่สิ่งที่ต้องการ
เวลา scan ข้อมูลใน userfrom 1 ผมต้องการให้ข้อมูลไม่เกิน จาก userfrom 2 ที่กำหนดไว้ว่าโค๊ด ไหนต้องมีจำนวนเท่าไหร่ครับหากเกินให้มีข้อความแจ้งเตือน Yes/no เพื่อต้องการถามว่าคุณต้องการทำต่อหรือไม่
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#14

Post by snasui »

:D ไม่ทราบว่าที่แจ้งมาเกี่ยวข้องอะไรกับค่าในคอลัมน์ L และ M เกิดการตรวจสอบค่ากันในขั้นตอนไหนครับ
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Re: Msg แจ้งเตือน

#15

Post by Leng »

1. ข้อมูลใน userfrom 2 จะบันทึกลง ใน Cloumn K และ Cloumn L
2. ข้อมูลใน userfrom 1 จะบันทึกลง ใน Cloumn A ถึง Cloumn I และทำการรวมข้อมูลของแต่ละโค๊ด ไว้ใน cloumn M ครับ
ผมเลยคิดว่าถ้าทำแจ้งเตือนโดยอ้างอิงจาก cloumn หน้าจะง่ายครับ โดยถ้าผลรวมแต่ละโค๊ดใน cloumn M เกินผลรวมของโค๊ดในแต่ละโค๊ดใน Cloumn L ก็ให้แจ้งเตือนครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#16

Post by snasui »

:D ช่วยยกตัวอย่าง Code และจำนวนที่กรอก ปุ่มที่คลิกแล้วเกิดปัญหา จะได้สะดวกในการทดสอบและเข้าถึงปัญหาโดยเร็วที่สุดครับ
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Re: Msg แจ้งเตือน

#17

Post by Leng »

ผมได้ทำการใส่ข้อมูลไว้แล้วครับ
สามารถกดเพิ่มข้อมูล ในช่อง barcode ได้เลยครับ

แต่ตอนนี้ปัญหาคือ
พอใส่โค๊ด อื่นที่ไม่เกินจำนวนที่ตั้งไว้ ก็ จะมี msg ขึ้นมาตลอดเลยครับ
สิ่งที่ต้องการคือ
อยากให้ msg ขึ้นเตือนก็ต่อเมื่อมีข้อมูลเกินในแต่ละโค๊ดที่กำหนดครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#18

Post by snasui »

:D ผมคีย์ 123 ในช่อง Barcode แล้ว Enter ไม่พบการแจ้งเตือนครับ
Leng
Member
Member
Posts: 225
Joined: Tue Jun 26, 2018 5:19 pm

Re: Msg แจ้งเตือน

#19

Post by Leng »

ต้องพิมพ์ข้อมูลให้เกิน ในข้อมูลที่โชว์ใน list box ก่อนครับ ถึงมีการแจ้งเตือน
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Msg แจ้งเตือน

#20

Post by snasui »

:D ผมจะยังไม่ทดสอบจนกว่าจะระบุค่ามาให้อย่างชัดเจนว่าต้องทำอะไร ที่ตรงไหน อย่างไร ด้วยค่าเท่าใด ถ้าโพสต์มาด้วยข้อความอื่นที่ไม่สื่อถึงสิ่งที่ผมแจ้งมาในโพสต์นี้ผมขออภัยที่จะแจ้งว่าผมขอพิจารณาไม่ตอบครับ
Post Reply