รบกวนช่วยแก้ไขคำสั่งซ่อนเมนูให้หน่อยนะคะ
กระทู้เก่าบอร์ด อ.Yeadram

 2,472   7
URL.หัวข้อ / URL
รบกวนช่วยแก้ไขคำสั่งซ่อนเมนูให้หน่อยนะคะ

หนูนำคำสั่งของ อ.PichaiTC ที่ได้แนะนำไว้ในบอร์ดนี้

DoCmd.ShowToolbar "Ribbon", acToolbarNo

เพื่อซ่อนเมนู Ribbon ของ Access 2007-2010 ใช้ได้ผลดีมากๆเลยค่ะ
แต่หากนำไปใช้กับ Access 2003 มันไม่ได้ค่ะ มัน error ตามรูป



ไม่ทราบว่า พอจะมีวิธีแก้ไข ให้มันใช้กับ 2003 ได้ด้วยหรือไม่คะ หรือไม่ก็ ทำเพียงไม่ให้มันขึ้น error มารบกวนก็ได้ค่ะ

7 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R14754
อ่า! ผมลืมไปแล้วอ่ะครับ และไม่มี 2003 ใช้แล้วด้วย 2003 ไม่มีคำว่า Ribbon ครับ ใช้ Menu Bar มั้งครับ ดูจากเว็บ

DoCmd.ShowToolBar "Menu Bar", acToolbarYes

DoCmd.ShowToolBar "Menu Bar", acToolbarNo
2 @R14755
ขอบคุณค่ะ อ. TTT

คำสั่งนี้ พอนำไปใช้กับ 2007 ก็ไม่ได้อีกค่ะ มัน error ตามในรูปค่ะอาจารย์



เหมือนกับว่ามันใช้แทนกันไม่ได้
หนูคิดว่า เมื่อมันใช้กันไม่ได้ ก็อยากหาวิธีปิดไม่ให้มันขึ้น orror คือว่าหากมันไม่ทำงานก็ให้มันอยู่เฉยๆ เน้นต้องการให้ทำงานกับ 2007-2010 เป็นหลักค่ะ
หากนำไปใช้กับ 2003 แล้วไม่ทำงานก็ให้มันหยุดไปเฉยๆ ไม่ต้องขึ้น orror ค่ะ
3 @R14756
ถ้าเขียนให้มันยืดหยุ่นโดยใช้ได้กับหลายเวอร์ชั้น ก็ต้องเขียนประมาณนี้ครับ

If SysCmd(acSysCmdAccessVer) > 11 Then
    DoCmd.ShowToolbar "Ribbon", acToolbarNo
else
    DoCmd.ShowToolBar "Menu Bar", acToolbarYes
End If

syscmd(acSysCmdAccessVer)

ค่าเป็น 10.0 ก็เท่ากับ Access 2002
ค่าเป็น 11.0 ก็เท่ากับ Access 2003
ค่าเป็น 12.0 ก็เท่ากับ Access 2007
ค่าเป็น 14.0 ก็เท่ากับ Access 2010
ค่าเป็น 15.0 ก็เท่ากับ Access 2012
4 @R14757
ขอบคุณอย่างยิ่งค่ะอาจารย์
เห็นทางสว่างแล้ว ค่ำๆจะทดลองนำไปใช้ดู แล้วจะมารายงานผลให้ทราบนะคะ
5 @R14759
เย้..ได้ตามที่ต้องการแล้วค่ะอาจารย์ โดยต้องแก้บรรทัดล่างให้เป็น No ด้วยค่ะ

If SysCmd(acSysCmdAccessVer) > 11 Then
    DoCmd.ShowToolbar "Ribbon", acToolbarNo
    Else
    DoCmd.ShowToolbar "Menu Bar", acToolbarNo
End If

นอกจากนี้หนูยังได้แนวคิดสามารถนำ SysCmd(acSysCmdAccessVer) ไปขยายผลใช้งานด้านอื่นๆได้อีกด้วยค่ะ

ขอบพระคุณอย่างยิ่งค่ะอาจารย์
6 @R20034
โค้ดนี้ใส่ตรงไหนครับ
7 @R20040
เหตุการณ์ไหนก็ได้ครับที่คุณต้องการซ่อน เช่น ถ้าต้องการให้เมื่อเปิดฟอร์มแล้วซอนเลย ก็ไว้ที่ Event > On Open

Private Sub Form_Open(Cancel As Integer)
    If SysCmd(acSysCmdAccessVer) > 11 Then
        DoCmd.ShowToolbar "Ribbon", acToolbarNo
        Else
        DoCmd.ShowToolbar "Menu Bar", acToolbarNo
    End If
End Sub

ปล. ส่วนการทำกลับคืน ก็เปลี่ยนจาก acToolbarNo เป็น acToolbarYes
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2681s