Page 2 of 2

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Sat Jan 31, 2015 10:20 am
by snasui
parakorn wrote:หากผมต้องการใส่เงื่อนไขบังคับให้กรอกข้อมูลในSheet "CN for team" Cell B5,D5,F5,H5 และ H10 เมื่อรัน Macro Save
:D เดิมมีข้อมูลอยู่แล้วหรือไม่ครับ หากมีอยู่แล้วโปรแกรมจะทราบได้อย่างไรว่ามีการกรอกใหม่แล้วหรือไม่ได้กรอกใหม่ :?:

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Sat Jan 31, 2015 10:41 am
by parakorn
ไม่ครับ ใส่โค้ด clear เพิ่ม ให้หลังจากกด save ให้ลบข้อมูลทิ้งเลยครับผม
SampleCN(revise6) - Copy.xlsm

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Sat Jan 31, 2015 11:04 am
by snasui
:D ตัวอย่าง Code สำหรับการตรวจสอบว่ามีการคีย์แล้วหรือไม่ ตามด้านล่างครับ

Code: Select all

With ActiveSheet
    If .Range("b5") = "" Or .Range("d5") = "" Or .Range("f5") = "" Or _
        .Range("h5") = "" Or .Range("h10") = "" Then
        MsgBox "Your data not complete. Please verify and try again."
        Exit Sub
    End If
End With

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Sat Jan 31, 2015 12:00 pm
by parakorn
snasui wrote::D ตัวอย่าง Code สำหรับการตรวจสอบว่ามีการคีย์แล้วหรือไม่ ตามด้านล่างครับ

Code: Select all

With ActiveSheet
    If .Range("b5") = "" Or .Range("d5") = "" Or .Range("f5") = "" Or _
        .Range("h5") = "" Or .Range("h10") = "" Then
        MsgBox "Your data not complete. Please verify and try again."
        Exit Sub
    End If
End With

Code: Select all

Sub Save()
' Save Macro
Sub MessageBox_2()
' Keyboard Shortcut: Ctrl+s
A = MsgBox("ต้องการบันทึก", vbCritical + vbYesNo)
If A = vbYes Then
 For i = 1 To 12
 With ActiveSheet
    If .Range("b5") = "" Or .Range("d5") = "" Or .Range("f5") = "" Or _
        .Range("h5") = "" Or .Range("h10") = "" Then
        MsgBox "กรุณาใส่ข้อมูลให้ครบถ้วน"
        Exit Sub
    Application.Goto Reference:="masterrecord"
    Selection.Copy
    Application.Goto Reference:="uldatarecord"
    Selection.End(xlDown).Select
    ActiveCell.Offset(1, 0).Range("A1").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    Sheets("Pivot").Select
    ActiveSheet.PivotTables("PivotTable2").PivotCache.Refresh
    ActiveSheet.PivotTables("PivotTable3").PivotCache.Refresh
    ActiveSheet.PivotTables("PivotTable4").PivotCache.Refresh
    Sheets("CN For Team").Select
    Range("B5,D5,F5,H5,H10").Select
    Range("H10").Activate
    Selection.ClearContents
    Range("A1").Select
End If
End With
End If
End Sub
ผมเรียบเรียงโค้ด ผิดตรงไหนเหรอครับ :cry: :cry:

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Sat Jan 31, 2015 12:38 pm
by snasui
:D Code ก่อนหน้ายังไม่ถูกต้องครับ สำหรับ Code ที่ผมให้ไปต้องเรียงติดกันเช่นนั้น ยกเว้นผมจะเขียนคำว่า 'Other code แทรกไว้ จึงจะมี Code อื่นแทรกได้

หลัก ๆ ที่ต้องปรับคือ
  1. Mark Sub MessageBox_2() ให้เป็น Comment เนื่องจากบรรทัดนี้ไม่จำเป็น
  2. แทรก Code ที่ผมให้ไปไว้ก่อน A = MsgBox("ต้องการบันทึก", vbCritical + vbYesNo)
  3. Code For i = 1 To 12 ยังไม่เขียนปิดด้วย Next i ให้เขียนปิดเสียด้วยครับ

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Sat Jan 31, 2015 12:55 pm
by parakorn
สำเร็จแล้วครับผม :cp: :cp:

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Fri Feb 27, 2015 3:04 am
by parakorn
สอบถามสูตรสำหรับดึงจำนวนลังล่าสุดที่มีการบันทึก

จากไฟล์แนบ ในชีท "CN For Team" ที่ K14 และ L14 ต้องการให้แสดง จำนวนลังล่าสุด

ตาม Sup ใน J14 โดยอ้างอิงจากฐานข้อมูลในชีท "CN Data" ครับผม

รบกวนด้วยครับ

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Fri Feb 27, 2015 5:46 pm
by snasui
:D จากตัวอย่างที่ให้มาเซลล์ K12 มีค่าเป็น 2 ไม่ทราบว่าพิจารณาอย่างไรจึงได้ค่านั้น ช่วยอธิบายรายละเอียดมาด้วยครับ

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Mon Mar 02, 2015 12:42 am
by parakorn
เนื่องจาก ในชีท "CN Data" มีข้อมูล ลัง Supplier "บจก. บิ๊กวัน อินเตอร์พลาสท์" ที่ "คืนได้" จำนวนสูงสุด(ลังสุดท้าย) คือ 2 ดังนั้น K12 จึงมีผลลัพท์ คือ 2 (ต้องการ Max of ลัง ของ Supplier ที่แสดงผลโดยมีเงื่อนไขคือ คืนได้ และ คืนไม่ได้)

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Mon Mar 02, 2015 10:40 am
by DhitiBank
ทดลองแบบนี้ครับ
ที่ K14 คีย์

Code: Select all

=IFERROR(MAX(IF(SupData=$J$14,IF(เงื่อนไขคืนData=K12,ลังData))),"")
Ctrl+Shift+Enter

คัดลอกสูตรไปทางขวาครับ :)

Re: การดึงข้อมูล จาก3เงื่อนไข , การสร้างdropdownlist จากตารางไดนามิคโดยตัวเลือกไม่ซ้ำกัน

Posted: Wed Mar 11, 2015 3:18 am
by parakorn
ขอบพระคุณมากครับ :cp: