Page 1 of 3
เมนูบาร์
Posted: Mon Sep 12, 2011 1:45 pm
by yodpao.b
ต้องการทำเมนูใช้เองแต่อยากได้เหมื่อนเมนูบาร์ทำอย่างไรครับ อาจารย์ช่วยทำตัวอย่างสักเมนูนะครับ
Re: เมนูบาร์
Posted: Mon Sep 12, 2011 4:13 pm
by snasui

การสร้างเมนูเองสามารถคลิกเมนู Tools > Customize เลือก Macros > เลือก Custom menu item ด้านขวา > คลิก Modify selection > กำหนดค่าตามต้องการ
Re: เมนูบาร์
Posted: Tue Sep 13, 2011 1:14 pm
by yodpao.b
ผมอาจสื่อความหมายผิด ที่ต้องการคืออยากสร้างเป็นเมนูเอง โดยทำลักษณะเหมือเมนูบาร์ของexcel
ที่วงไว้คือส่วนหนึ่งของเมนู แต่มันไม่สวยเหมือนด้านบน
Re: เมนูบาร์
Posted: Tue Sep 13, 2011 4:14 pm
by snasui

เมนูต้องสร้างด้วย Object ที่เป็นเมนูของโปรแกรมครับ จะสร้างเองหรือใช้ VBA สร้างก็ได้ จะสร้างให้เป็น ComboBox ตามตัวอย่างที่ให้มานั้นเป็นเรื่องยาก หากจะทำได้ต้องสร้าง Class ขึ้นมาเองครับ
Re: เมนูบาร์
Posted: Wed Sep 14, 2011 11:15 am
by yodpao.b
ขอตัวอย่างได้ไหมครับ
Re: เมนูบาร์
Posted: Wed Sep 14, 2011 11:28 am
by snasui

ไม่มีตัวอย่างครับและไม่เคยเห็นใครทำเช่นนั้นด้วยครับ

Re: เมนูบาร์
Posted: Wed Sep 14, 2011 8:29 pm
by snasui

ตัวอย่างด้านล่างเป็นการสร้าง Custom เมนูแบบ ComboBox
หลังจากนำ Code ไปวางแล้ว ลอง Run Sub ComboToolbar จากนั้นเลือก แต่ละ Item ในเมนูที่สร้างขึ้นมาแล้วสังเกตดูผลครับ
Code: Select all
Sub ComboToolbar()
Set myBar = CommandBars _
.Add(Name:="Custom", Position:=msoBarTop, _
Temporary:=True)
myBar.Visible = True
Set newCombo = myBar.Controls _
.Add(Type:=msoControlComboBox)
With newCombo
.AddItem "Q1"
.AddItem "Q2"
.AddItem "Q3"
.AddItem "Q4"
.Style = msoComboNormal
.OnAction = "ScrollToQuarter"
End With
End Sub
Sub ScrollToQuarter()
Dim userChoice As Long
userChoice = CommandBars("Custom").Controls(1).ListIndex
Select Case userChoice
Case 1
MsgBox "Q1 is selected"
Case 2
MsgBox "Q2 is selected"
Case 3
MsgBox "Q3 is selected"
Case 4
MsgBox "Q4 is selected"
End Select
End Sub
Re: เมนูบาร์
Posted: Thu Sep 15, 2011 9:17 am
by yodpao.b
อันนี้ไว้ก่อนนะครับจารย์ ผมมีตัวอย่างไว้จะให้อาจารย์ดูครับ ไฟล์มันใหญ่กำลังหาทางตัดออก
Re: เมนูบาร์
Posted: Thu Sep 15, 2011 10:45 am
by yodpao.b
อันที่อาจารย์ให้น่าจะคล้ายกันกับตัวอย่างที่ผมแนบมา อาจารย์ช่วยดูอีกที่ครับ อยากได้แบบนี้มากครับ
แนบรูปมาให้ด้วยครับ
Re: เมนูบาร์
Posted: Thu Sep 15, 2011 11:33 am
by snasui

ดูตัวอย่างการสร้างเมนูใช้เองตามภาพด้านล่างครับ
Re: เมนูบาร์
Posted: Thu Sep 15, 2011 12:00 pm
by yodpao.b
ขอบพระคุณมากครับ ที่นี้ก็ได้เมนูสวยสวยไว้แล้ว
Re: เมนูบาร์
Posted: Fri Sep 30, 2011 11:14 am
by yodpao.b
เมนูที่อาจาร์ยสอน ในกรณีที่ผมนำไฟล์ไปใช้กับเครื่องอื่น เมนูมันไม่ตามไปครับ และเมนูนี้จะอยู่ที่เครื่องเดิม
คำถาม ทำอย่างไรให้เมนูตามไปไม่ให้ค้างไว้เครือ่งเดิม
Re: เมนูบาร์
Posted: Fri Sep 30, 2011 3:22 pm
by snasui

จากภาพด้านบน

คลิกปุ่ม Attach... ที่อยู่ด้านล่างปุ่ม Reset จะสามารถกำหนดให้แนบเครื่องมือไปกับไฟล์ได้ครับ
Re: เมนูบาร์
Posted: Wed Oct 05, 2011 12:18 pm
by yodpao.b
ได้แล้วครับอาจารย์ แต่ตั้งสั่งรัน Sub ComboToolbar ใน ThisWorkBook ใช่ไหมครับ
Re: เมนูบาร์
Posted: Wed Oct 05, 2011 12:53 pm
by snasui

อันนี้ก็แล้วแต่ว่า Code อยู่ที่ไหนครับ ถ้าเมนูกับไฟล์ไปด้วยกันก็ควรจะเป็นเช่นนั้นครับ

Re: เมนูบาร์
Posted: Wed Oct 05, 2011 2:35 pm
by yodpao.b
อาจาร์ยครับเอาใหม่ผมงง
หลักการสร้างเมนูขึ้นใช้งานในไฟล์แต่เมื่อเอาไฟล์ไปใช้เครื่องไหนเมนูก็จะตามไปใช้งานร่วมกับไฟล์นั้นด้วย ทำอย่างไร
จากตัวอย่างที่ส่งให้อาจาร์ย ผมยังไม่ได้ลองนำไปใช้กับเครื่องอื่น แต่เห็นปัญหาที่เกิดขึ้นใหม่คือ เมื่อเปิดไฟล์Excelอื่นเมนูที่สร้างขึ้นนั้นยังขึ้นค้างอยู่
มันควรจะไม่แสดงให้เห็น
Re: เมนูบาร์
Posted: Wed Oct 05, 2011 4:55 pm
by snasui
yodpao.b wrote:อาจาร์ยครับเอาใหม่ผมงงหลักการสร้างเมนูขึ้นใช้งานในไฟล์แต่เมื่อเอาไฟล์ไปใช้เครื่องไหนเมนูก็จะตามไปใช้งานร่วมกับไฟล์นั้นด้วย ทำอย่างไร แต่เห็นปัญหาที่เกิดขึ้นใหม่คือ เมื่อเปิดไฟล์Excelอื่นเมนูที่สร้างขึ้นนั้นยังขึ้นค้างอยู่มันควรจะไม่แสดงให้เห็น
การทำเช่นนั้นต้องพึ่ง VBA ในการสร้างเมนู เมื่อเปิดไฟล์จะแสดงเมนูมาให้ เมื่อปิดก็ลบเมนูทิ้งไปครับ หากต้องการเช่นนั้นก็เขียนมาก่อนครับ ติดตรงไหนก็มาช่วยกันดูต่อครับ

Re: เมนูบาร์
Posted: Thu Oct 06, 2011 9:27 am
by yodpao.b
เข้าใจแล้วครับ
เนื่องจากผมตั้งไปปฎิบัติงานต่างจังหวัด 4 วัน
ก่อนไปผมขอเรียนปรึกษาอาจารย์ว่าอาจารย์สามารถให้คำปรึกษาเกียวกับ MsAccess ได้ไหมครับ
เพราะมีนักศึกษาฟึกงานเขียนไว้ให้แต่ยังไม่สมบูรณ์ เข้าใจว่าน่าจะยังไม่มีการ คิวรี และทำ Report
ขอบคุณครับ
Re: เมนูบาร์
Posted: Thu Oct 06, 2011 11:47 am
by snasui

ถ้าเป็นเมื่อสักเกือบสิบปีที่แล้วก็พอได้ครับ ตอนนี้ผมใช้งาน Access น้อยมาก การตอบคำถามอาจจะต้องกลับไปทบทวนกันอีกเยอะ เกรงจะเสียเวลารอคอยนานครับ

Re: เมนูบาร์
Posted: Tue Oct 11, 2011 3:07 pm
by yodpao.b
อยากให้เมนูที่วงกลมหายไปครับ ลองทำเองโดยใช้คำสั่ง
Code: Select all
Application.CommandBars("Worksheet Menu Bar").Visible = False
แต่ Eeror ครับ
ช่วยแก้ให้ด้วยครับ
Untitled1.gif