snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
boyanny2524
Member
Posts: 10 Joined: Thu Nov 05, 2020 10:01 am
Excel Ver: 2016
#1
Post
by boyanny2524 » Tue Nov 17, 2020 10:43 am
ผมขออนุญาติสอบถามนะครับ
คือ ใน UserForm 2
ที่ Textboxt1 ผมกำหนดให้ใส่เป็น Date
แต่ พอเราบันทึกลง sheet database( ชีทชื่อ DBACT )
ข้อมูลที่ส่งไปกลับเป็น Text ทำให้ผมไม่สามารถใส่ Timeline tool ได้ครับ
รบกวนช่วยแก้ปัญหาทีครับ ผมกำหนด format ก็แล้ว ก็ยังส่งค่าเป็น text อยู่ดีครับ ขอบคุณทุกท่านครับ
TEST.xlsm
You do not have the required permissions to view the files attached to this post.
puriwutpokin
Guru
Posts: 3801 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#2
Post
by puriwutpokin » Tue Nov 17, 2020 1:20 pm
ปรับดูตามนี้ครับ
Code: Select all
'Other code...
LastRow.Offset(1, 0).Value = Format(Me.TextBox1.Text, "mm/dd/yyyy")
'Other code...
boyanny2524
Member
Posts: 10 Joined: Thu Nov 05, 2020 10:01 am
Excel Ver: 2016
#3
Post
by boyanny2524 » Tue Nov 17, 2020 1:57 pm
puriwutpokin wrote: Tue Nov 17, 2020 1:20 pm
ปรับดูตามนี้ครับ
Code: Select all
'Other code...
LastRow.Offset(1, 0).Value = Format(Me.TextBox1.Text, "mm/dd/yyyy")
'Other code...
ได้ตามต้องการแล้วครับ ขอบคุณมากครับ
ถ้าผมจะรบกวนถามอีกต้องตั้งใหม่หรือสามารถถามต่อได้เลยครับ
คำถามคือ หากเราต้องการ Validate ว่าหาก User ไม่กรอกข้อมูลใน Textbox ใดๆ
ให้ program ฟ้อง พอจะแนะนำได้ไหมครับว่าต้องศึกษาด้านไหนต่อครับ
ขอบคุณครับ
snasui
Site Admin
Posts: 31214 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#4
Post
by snasui » Tue Nov 17, 2020 7:55 pm
กรณีเป็นเรื่องเดียวกันให้ถามในกระทู้เดียวกันต่อเนื่องกันไป ไม่ได้จำกัดปริมาณของโพสต์ในแต่ละกระทู้ครับ
กรณีต้องการ Validate สามารถทำได้หลากหลายแล้วแต่ต้องการ โดยทั่วไปจะ Validate ที่ขั้นตอนการทำงานถัดไป เช่น เมื่อผู้ใช้กรอกข้อมูลแล้วคลิกปุ่ม Submit ก็จะใช้ปุ่มนี้ทำการ Validate โดยเขียน Code ว่า Object ที่เป็น Required Field ได้ถูกกรอกไว้ครบถ้วนแล้วหรือไม่ ถ้ายังไม่กรอกก็ทำการแจ้งผู้ใช้ด้วย Msgbox แล้วออกจากคำสั่ง เช่นนี้เป็นต้นครับ
boyanny2524
Member
Posts: 10 Joined: Thu Nov 05, 2020 10:01 am
Excel Ver: 2016
#5
Post
by boyanny2524 » Wed Nov 18, 2020 12:10 pm
ขอบคุณอาจารย์มากครับ
boyanny2524
Member
Posts: 10 Joined: Thu Nov 05, 2020 10:01 am
Excel Ver: 2016
#6
Post
by boyanny2524 » Tue Nov 24, 2020 4:41 pm
ตอนนี้ผมพบปัญหาอีกครับ คือ
ที่ UserForm2 >> TextBoxt122
ผมให้ Textbox122เป็น even รับข้อมูลเพื่อเป็นเงื่อนไขเพื่อ Vlookup ใน sheetname "Shopoer & model"
ปัญหาที่พบคือ
หากผมกรอกเฉพาะตัวเลขจะสามารถ Vlookup หาข้อมูลตามต้องการได้ครับ
แต่หากผมกรอก ตัวอักษรผสมกับตัวเลข จะไม่สามารถ Vlookupได้ครับ
รบกวนด้วยครับ
รบกวนตาม file แนบครับ
You do not have the required permissions to view the files attached to this post.
puriwutpokin
Guru
Posts: 3801 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#7
Post
by puriwutpokin » Tue Nov 24, 2020 8:27 pm
เปลี่ยน ตามนี้ดูครับ
Code: Select all
Private Sub TextBox122_Change()
On Error Resume Next
Set myRange = Worksheets("Shop order& Model").Range("B3:F50000")
TextBox123 = Application.WorksheetFunction.VLookup(CStr(TextBox122), myRange, 5, False)
TextBox124 = Application.WorksheetFunction.VLookup(CStr(TextBox122), myRange, 2, False)
TextBox132 = Application.WorksheetFunction.VLookup(CStr(TextBox122), myRange, 3, False)
TextBox125 = Application.WorksheetFunction.VLookup(CStr(TextBox122), myRange, 4, False)
End Sub
boyanny2524
Member
Posts: 10 Joined: Thu Nov 05, 2020 10:01 am
Excel Ver: 2016
#8
Post
by boyanny2524 » Wed Nov 25, 2020 9:15 am
พอเปลี่ยนcode แล้วกลายเป็นว่า ไม่สามารถv look up ในเงื่อนไขที่เป็นตัวเลขได้ครับ
puriwutpokin
Guru
Posts: 3801 Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365
#9
Post
by puriwutpokin » Wed Nov 25, 2020 11:23 am
ลองปรับเป็น
Code: Select all
Private Sub TextBox122_Change()
On Error Resume Next
Set myRange = Worksheets("Shop order& Model").Range("B3:F50000")
If Not IsNumeric(TextBox122) Then
TextBox123 = Application.VLookup(TextBox122, myRange, 5, False)
TextBox124 = Application.VLookup(TextBox122, myRange, 2, False)
TextBox132 = Application.VLookup(TextBox122, myRange, 3, False)
TextBox125 = Application.VLookup(TextBox122, myRange, 4, False)
Else
TextBox123 = Application.VLookup(CLng(TextBox122), myRange, 5, False)
TextBox124 = Application.VLookup(CLng(TextBox122), myRange, 2, False)
TextBox132 = Application.VLookup(CLng(TextBox122), myRange, 3, False)
TextBox125 = Application.VLookup(CLng(TextBox122), myRange, 4, False)
End If
End Sub
boyanny2524
Member
Posts: 10 Joined: Thu Nov 05, 2020 10:01 am
Excel Ver: 2016
#10
Post
by boyanny2524 » Wed Nov 25, 2020 1:46 pm
ขอบคุณมากครับ ได้ตามต้องการแล้วครับ
ผมขอความรู้ได้ไหมครับ ทำไม v look up ในvba
จึงไม่สามารถหาได้ในรูปแบบอักษรและตัวเลขครับ
snasui
Site Admin
Posts: 31214 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#11
Post
by snasui » Wed Nov 25, 2020 7:48 pm
Vlookup ไม่ว่าจะในชีตหรือใน Code คือตัวเดียวกัน คุณสมบัติเทียบเท่ากันครับ