แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - ิboonyarit

หน้า: 1 [2] 3
17
พึ่งคิดได้ว่าก็ใช้คำสั่งให้ทุกปุ่มที่มีซ่อนก่อนแล้วค่อยมาสั่งแสดงตามตัวเลขที่หลังอีกที  :meaw:

โค๊ด: [Select]
Private Sub Text5_AfterUpdate()

Me.Command1.Visible = False
Me.Command2.Visible = False
Me.Command3.Visible = False
Me.Command4.Visible = False

GetNum = Me.Text5
    Select Case GetNum
        Case "1": Me.Command1.Visible = True
        Case "2": Me.Command2.Visible = True
        Case "3": Me.Command3.Visible = True
        Case "4": Me.Command4.Visible = True
    End Select
End Sub

โค้ดข้างบนสามารถลดรูปลงมาได้นะครับ พร้อมกับรองรับกรณี Text5 ไม่ได้เป็นตัวเลข

   Dim I   As Integer
   Dim J   As Integer

   If IsNumeric(Me.Text5) Then J = CInt(Me.Text5)
   For I = 1 to 12
      Me("command" & Cstr(I)).Enabled = (I = J)
   Next

แต่สงสัยว่าทำไมต้องทำ 12 ปุ่ม สร้างปุ่มเดียวแล้วพิจารณาการทำงานของโค้ดในปุ่มนั้นด้วยค่าจาก Text5 ไม่ง่ายกว่าหรือ ?
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

18
พึ่งคิดได้ว่าก็ใช้คำสั่งให้ทุกปุ่มที่มีซ่อนก่อนแล้วค่อยมาสั่งแสดงตามตัวเลขที่หลังอีกที  :meaw:

โค๊ด: [Select]
Private Sub Text5_AfterUpdate()

Me.Command1.Visible = False
Me.Command2.Visible = False
Me.Command3.Visible = False
Me.Command4.Visible = False

GetNum = Me.Text5
    Select Case GetNum
        Case "1": Me.Command1.Visible = True
        Case "2": Me.Command2.Visible = True
        Case "3": Me.Command3.Visible = True
        Case "4": Me.Command4.Visible = True
    End Select
End Sub
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

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

20
แนวคือเมื่อใส่เลขงวดไปแล้ว แล้วให้แสดงเฉพาะปุ่มนั้นมีแนวทางตามนี้ครับ

แบบที่1 ทุกปุ่มสั่งล็อคใว้ Enabled = No จะปลดล็อคเมื่อเลขงวดตรง
โค๊ด: [Select]
Private Sub Text5_AfterUpdate()
GetNum = Me.Text5
    Select Case GetNum
        Case "1": Me.Command1.Enabled = True
        Case "2": Me.Command2.Enabled = True
        Case "3": Me.Command3.Enabled = True
        Case "4": Me.Command4.Enabled = True
    End Select
End Sub

แบบที่2 ทุกปุ่มสั่งซ่อนใว้(ยังไม่แสดง) Visible = No จะแสดงปุ่มเมื่อเลขงวดตรง
โค๊ด: [Select]
Private Sub Text5_AfterUpdate()
GetNum = Me.Text5
    Select Case GetNum
        Case "1": Me.Command1.Visible = True
        Case "2": Me.Command2.Visible = True
        Case "3": Me.Command3.Visible = True
        Case "4": Me.Command4.Visible = True
    End Select
End Sub

ทั้งสองแบบต่างกันที่การตั้งค่าปุ่มบนหน้าฟอร์มกับชุดคำสั่งเพียงเล็กน้อย

แต่ชุดคำสั่งด้านบนยังติดขัดคือ สมมุติใส่เลขงวด1 = ปุ่ม1ทำงาน | แก้ใส่เลขงวด2 = ปุ่ม2ทำงาน แต่ปุ่ม1ก็จะยังคงทำงานอยู่ไม่ล็อคหรือกลับไปซ่อนตามเดิมนะ รอคำแนะนำจากท่านอื่นอีกทีครับ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

21
ไม่แน่ใจว่าใกล้เคียงที่ต้องการหรือไม่ มีตัวอย่างล็อคอินผู้ใช้แล้วแสดงเมนูเฉพาะของตนเองครับ https://www.thai-access.com/index.php?topic=932.0 แต่ทุกคนที่ใช้ฟอร์มนั้นๆได้ จะมีสิทธิ์เท่ากันทุกอย่าง ถ้าจะกำหนดว่าผู้ใช้คนนี้จะทำอะไรได้บ้างในหน้าฟอร์มนั้นๆ เช่น ดูได้อย่างเดียว หรือแก้ไขได้ด้วย แนะนำว่าเพิ่มเทเบิลของกลุ่มผู้ใช้ซึ่งจะเก็บว่ากลุ่มนี้มีใครบ้าง (คนนึงสามารถอยู่ได้หลายๆกลุ่ม) และเพิ่มเทเบิลสิทธิ์ของกลุ่มนี้ที่มีต่อฟอร์มนั้นๆว่า กลุ่มนี้เมื่อใช้ฟอร์มนั้นแล้ว จะมีสิทธิ์ชื่อว่าอะไรบ้าง เช่น ชื่อสิทธิ์ว่า "AE" (หมายถึง Add และ Edit ได้)   เมื่อเปิดฟอร์มที่ใช้งานขึ้นมา ก็เขียนโค้ดหาจากเทเบิลว่านาย ก. อยู่กลุ่มผู้ใช้ไหนบ้าง และรวมแต่ละกลุ่มที่พบแล้ว นาย ก. มีสิทธิ์รวมทั้งสิ้นอะไรที่ใช้กับฟอร์มนั้นได้บ้าง เมื่อฟอร์มจะทำการรับการป้อนเรคอร์ดใหม่ ก็ตรวจเลยว่าถ้าไม่มีสิทธิ์ A ก็ไม่ให้ทำ อย่างนี้เป็นต้นครับ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

22
ห้อง MS Access / ตัวอย่างระบบ Login แบบมี Level
« เมื่อ: 30 มิ.ย. 63 , 18:05:08 »
ท่านใดมีตัวอย่างระบบ Login แบบแยก Level ฝากขอนำไปเรียนรู้ตัวอย่างหน่อยครับพอดีเพิ่งหัดเขียนได้ระดับนึงยังไม่ค่อยเก่ง
ขอบคุณมากครับ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

23
ขอบคุณครับ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

24
สวัสดีครับ
ตอนนี้ผมกำลังแยกข้อมูลการส่งของ และWIP ในแต่ละเดือน
โดยต้องการ RequestQty - ShipQty + (WIP ของเดือนที่แล้ว) = WIP
ไม่ทราบว่าต้องทำอย่างไรครับ

โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

25
ห้อง MS Access / : ไฮไลท์ row ที่โฟกัส
« เมื่อ: 19 มิ.ย. 63 , 16:48:52 »

การสร้าง Highlight ให้กับ Current Record ลองดูตัวอย่างนี้ครับ

1.สร้าง textbox unbound ขึ้นมา 1 อันชื่อ txtHighlight แล้วซ่อนไว้ ไม่ต้องแสดง

2.เลือก textbox ตรง Detail ทั้งหมด แล้วเลือกไปที่ี การจัดรูปแบบตามเงื่อนไข ดังภาพด้านล่าง


3.กำหนดเงื่อนไข นิพจน์ โดยสร้างเงื่อนไขเช็คว่า ถ้าเรคคอร์ดปัจจุบัน = txtHighlight ก็จะแสดง สีตามที่เรากำหนด ดังรูป


4.กำหนดโค้ด Event Form_Current()

Private Sub Form_Current()
Me.txtHighlight = Me.[ID]
End Sub

หมายเหตุ

ถ้าคุณอยากให้ได้แบบการเลือกทีละหลายๆ เรคคอร์ดโดยใช้ In เหมือนตัวอย่างเก่าที่เคยทำ ก็นำมาปรับใช้ได้เลยครับ ใช้วิธีแบบนั้นได้เหมือนกัน
โดยกำหนดเงื่อนไข แบบตัวอย่างข้อ 2
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

26
ห้อง MS Access / ไฮไลท์ row ที่โฟกัส
« เมื่อ: 19 มิ.ย. 63 , 15:52:47 »
อยากทำไฮไลท์ ในแถว ของฟอร์ม แบบต่อเนื่อง ใ้หคล้ายๆ กับ กล่องรายการครับ ไม่ทราบว่าต้องทำอย่างไรครับ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

27
ขอบคุณครับ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

28
สอบถามครับ โดยแยกเป็นคำถามดังนี้ครับ หลังการ เพิ่ม record ใหม่แบบ(Append) หลังจากนำเข้าข้อมูลเรียบร้อยแล้ว อยากให้มีข้อความแจ้งจำนวนที่นำเข้าไปครับ และ คำถามที่ 2 เป็นการ update เช่นกันครับ อยากให้แจ้งจำนวน record ที่ได้มีการ update เข้าไป  เช่น  นำเข้าทั้งหมด xxx Record เรียบร้อยแล้ว ,  ปรับปรุงข้อมูลจำนวน xxx Record เรียบร้อยแล้ว  ประมาณนี้ครับ   ขอบคุณครับ

ลองดูตัวอย่างจากกระทู้นี้ครับ

https://www.thai-access.com/index.php?topic=1231.msg5428#msg5428
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

29
สอบถามครับ โดยแยกเป็นคำถามดังนี้ครับ หลังการ เพิ่ม record ใหม่แบบ(Append) หลังจากนำเข้าข้อมูลเรียบร้อยแล้ว อยากให้มีข้อความแจ้งจำนวนที่นำเข้าไปครับ และ คำถามที่ 2 เป็นการ update เช่นกันครับ อยากให้แจ้งจำนวน record ที่ได้มีการ update เข้าไป  เช่น  นำเข้าทั้งหมด xxx Record เรียบร้อยแล้ว ,  ปรับปรุงข้อมูลจำนวน xxx Record เรียบร้อยแล้ว  ประมาณนี้ครับ   ขอบคุณครับ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

30
ขอบคุณมากครับ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

31
สอบถามครับว่าเราจะตรวจสอบได้อย่างไรว่าเมื่อเราใช้คำสั่ง docmd.Runsql "" ทั้ง Update Insert Delete เมื่อทำงานสำเร็จ ให้ Message บอกว่าได้ดำเนินการแล้ว มีการ insert update delete ในฐานข้อมูลเกิดขึ้นจริงๆ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

32
สวัสดีครับ ผมอยากจะขอรบกวนผู้รู้ที่มีไฟล์ตัวอย่างการรันเลขแบบมีตัวอักษรรวมอยู่ด้วยครับ ตัวอย่างเช่น ABC20030001 โดย

ABC คือหมวด
20 คือ ปี
03 คือเดือน
0001 คือเลขที่

และอยากให่เลขที่นับ 1 ใหม่ทุกเดือนครับ
โพสต์นี้ได้รับคำขอบคุณจาก: ิboonyarit

หน้า: 1 [2] 3