Page 1 of 1
Macro : ข้อมูลอิงตาม Combobox ที่เลือก
Posted: Tue Jan 14, 2020 9:58 am
by wisitsakbenz
เรียน สอบถามอาจารย์ครับ
วิธีการคือ ไปที่ Sheet "Menu" > คลิกปุ่ม "Menu" ใน UserForm1 : Combobox
ถ้าเลือก Mode of Medevac เป็น Air Ambulance คลิกปุ่ม Preview ข้อมูลในส่วนของ TERM AND CONDITIONS (บรรทัดที่ 60) จะแสดงข้อมูลของ Air Ambulance และ Commercial Flight จะไม่นำมาแสดง
แต่ถ้าเลือก Mode of Medevac เป็น Commercial Flight คลิกปุ่ม Preview ข้อมูลในส่วนของ TERM AND CONDITIONS (บรรทัดที่ 60) จะแสดงข้อมูลของ Commercial Flight และ Air Ambulance จะไม่นำมาแสดง
หมายเหตุ : Code จะอยู่ใน UserForm1 ครับ
ต้องปรับ Code อย่างไรบ้างครับ ขอบคุณครับ
Re: Macro : ข้อมูลอิงตาม Combobox ที่เลือก
Posted: Tue Jan 14, 2020 8:09 pm
by snasui

ตอนนี้คลิกปุ่ม Preview แล้ว Error กรุณาแก้ไขแล้วแนบมาใหม่อีกรอบครับ
Re: Macro : ข้อมูลอิงตาม Combobox ที่เลือก
Posted: Wed Jan 15, 2020 8:33 am
by wisitsakbenz
แก้ไขไฟล์ให้แล้วครับอาจารย์ ขอบคุณครับ
Re: Macro : ข้อมูลอิงตาม Combobox ที่เลือก
Posted: Wed Jan 15, 2020 11:24 am
by wisitsakbenz
Code: Select all
Sub GetData()
Sheets("Forms").Range("A64:J90").ClearContents
Dim rFind As Range, rDataAll As Range
Dim r As Range, rTarget As Range
Dim ws As Worksheet, i As Integer
Set ws = Worksheets("Forms")
Set rFind = Sheets("Forms").Range("D11")
Application.EnableEvents = False
ws.Range("A64:J90").ClearContents
If Sheets("Forms").Range("D11") = "" Then Exit Sub
With Sheets("List")
Set rDataAll = .Range("B38", .Range("B" & Rows.Count).End(xlUp))
If .Columns("B:B").Find(rFind, LookIn:=xlValues) Is Nothing Then
MsgBox ("ไม่มีรายการนี้")
Exit Sub
End If
End With
i = 64
For Each r In rDataAll
If r = rFind Then
ws.Range("B" & i).Resize(1, 3).Value = _
r.Offset(0, 1).Resize(1, 3).Value
i = i + 1
End If
Next r
Application.EnableEvents = True
' MsgBox "Get data has finished."
Set ws = Nothing
Set rFind = Nothing
Set rDataAll = Nothing
End Sub
เรียนอาจารย์ครับ ผมลองเขียน Code ดู
ไปที่ Sheet "Menu" > คลิก Menu > เลือก Mode of Medevac เป็น Commercial Flight คลิกปุ่ม Preview
ไปที่ Sheet "Forms" ข้อมูลจะแสดงใน Line ที่ 64 ปกติ
คลิกปุ่ม "New" > Preview เพื่อ Get ค่าต่าง ๆ ใน Forms ให้เป็นค่าว่าง หลังจากนั้น
เลือก Mode of Medevac เป็น Air Ambulance > Previewข้อมูลจะไม่แสดงใน Line ที่ 64
ต้องปรับ Code อย่างไรบ้างครับ ขอบคุณครับ
Re: Macro : ข้อมูลอิงตาม Combobox ที่เลือก
Posted: Wed Jan 15, 2020 5:31 pm
by snasui
wisitsakbenz wrote: Wed Jan 15, 2020 11:24 am
ไปที่ Sheet "Menu" > คลิก Menu > เลือก Mode of Medevac เป็น Commercial Flight คลิกปุ่ม Preview
ไปที่ Sheet "Forms" ข้อมูลจะแสดงใน Line ที่ 64 ปกติ

ค่อย ๆ ถามตอบไปครับ
ผมทดสอบแล้วไม่พบว่าข้อมูลแสดงใน Line 64 ตามที่แจ้งมาครับ
Re: Macro : ข้อมูลอิงตาม Combobox ที่เลือก
Posted: Thu Jan 16, 2020 8:39 am
by wisitsakbenz
ใน sheet"Form" นะครับอาจารย์ snasui
Re: Macro : ข้อมูลอิงตาม Combobox ที่เลือก
Posted: Thu Jan 16, 2020 5:20 pm
by snasui

มันจะแสดงอีกไม่ได้เพราะมีการ Clear ทิ้งไปแล้วที่บรรทัด
Range("A64:J90").ClearContents ของ Procedure
Private Sub InputNew_Click() ถ้าจะให้คงอยู่ก็ต้องไม่ Clear ทิ้งครับ
Re: Macro : ข้อมูลอิงตาม Combobox ที่เลือก
Posted: Fri Jan 17, 2020 8:22 am
by wisitsakbenz
ได้แล้วครับอาจารย์ snasui ขอบคุณมากครับ