:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser
🪷 คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ

มุมมองใน excel

ฟอรัมถาม-ตอบปัญหาการใช้งาน Macro และ VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
User avatar
tigerwit
Silver
Silver
Posts: 555
Joined: Wed Mar 31, 2010 10:51 pm
Location: สกลนคร
Excel Ver: 2019
Contact:

มุมมองใน excel

#1

Post by tigerwit »

ใช้ excel เขียนโปรแกรมอำนวยความสะดวกในงานธุรการของโรงเรียน
โดยกำหนดหน้าหลักของโปรแกรมใน sheet 1 เป็นมุมมอง 100 %
แต่บางที่ผู้ใช้โปรแกรมบางคนก็ไปปรับลดมุมมองลงเป็น 90 % หรือ 85 %
เรามีวิธีการล็อคหน้าหลักของ (sheet1) ให้มุมมองอยู่ที่ 100 % ไม่สามารถปรับเปลี่ยน ได้อย่างไรครับ
Attachments
edu.png
edu.png (171.26 KiB) Viewed 121 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31190
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มุมมองใน excel

#2

Post by snasui »

:D กรณีผู้ใช้ต้องเลือกเซลล์ เราสามารถเพิ่ม Event SelectionChange เพื่อปรับให้กลับมาเป็น 100% ในชีทนั้นตามด้านล่างครับ

Code: Select all

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    ActiveWindow.Zoom = 100
End Sub
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: มุมมองใน excel

#3

Post by bank9597 »

:D :D :D :D :D :D :D
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
User avatar
tigerwit
Silver
Silver
Posts: 555
Joined: Wed Mar 31, 2010 10:51 pm
Location: สกลนคร
Excel Ver: 2019
Contact:

Re: มุมมองใน excel

#4

Post by tigerwit »

ขอบคุณครับ
เอาแบบ ไม่ให้ผู้ใช้ย่อ หรือขยายเลย ได้ไหมครับ

ปล.
(รหัสผ่าน 123456)
Attachments
Educatian.xls
(194.5 KiB) Downloaded 6 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31190
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มุมมองใน excel

#5

Post by snasui »

:D ลองดู Code ตามด้านล่าง วางไว้ใน ThisWorkbook ครับ เมื่อเปิดไฟล์ขึ้นมาจะทำให้เมนู Zoom จะไม่ทำงาน และจะทำงานเมื่อปิดไฟล์นี้ไปครับ

Code: Select all

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    With Application
        .CommandBars("Standard").Controls(24).Enabled = True
        .CommandBars("View").Controls(11).Enabled = True
    End With
End Sub

Private Sub Workbook_Open()
    With Application
        .CommandBars("Standard").Controls(24).Enabled = False
        .CommandBars("View").Controls(11).Enabled = False
    End With
End Sub
User avatar
tigerwit
Silver
Silver
Posts: 555
Joined: Wed Mar 31, 2010 10:51 pm
Location: สกลนคร
Excel Ver: 2019
Contact:

Re: มุมมองใน excel

#6

Post by tigerwit »

ลองดู Code ตามด้านล่าง วางไว้ใน ThisWorkbook ครับ เมื่อเปิดไฟล์ขึ้นมาจะทำให้เมนู Zoom จะไม่ทำงาน และจะทำงานเมื่อปิดไฟล์นี้ไปครับ
โค้ด: เลือกทั้งหมด
Private Sub Workbook_BeforeClose(Cancel As Boolean)
With Application
.CommandBars("Standard").Controls(24).Enabled = True
.CommandBars("View").Controls(11).Enabled = True
End With
End Sub

Private Sub Workbook_Open()
With Application
.CommandBars("Standard").Controls(24).Enabled = False
.CommandBars("View").Controls(11).Enabled = False
End With
End Sub
ลองแล้วครับ
ยังไม่ work
ยังย่อ ขยายได้เหมือนเดิม
ตรงแถบเครื่องมือครับ
Attachments
Educatian.xls
(219 KiB) Downloaded 7 times
User avatar
tigerwit
Silver
Silver
Posts: 555
Joined: Wed Mar 31, 2010 10:51 pm
Location: สกลนคร
Excel Ver: 2019
Contact:

Re: มุมมองใน excel

#7

Post by tigerwit »

รูปครับ
Attachments
edu2.png
edu2.png (214.06 KiB) Viewed 100 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31190
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มุมมองใน excel

#8

Post by snasui »

:D ลองใช้วิธีการ Loop ตามด้านล่างครับ

Code: Select all

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim i As Integer
    With Application.CommandBars("Standard")
        For i = 1 To .Controls.Count
            If .Controls(i).Caption = "&Zoom:" Then
                .Controls(i).Enabled = True
            End If
        Next i
    End With
    Application.CommandBars("View").Controls(11).Enabled = True
End Sub

Private Sub Workbook_Open()
    Dim i As Integer
    With Application.CommandBars("Standard")
        For i = 1 To .Controls.Count
            If .Controls(i).Caption = "&Zoom:" Then
                .Controls(i).Enabled = False
            End If
        Next i
    End With
    Application.CommandBars("View").Controls(11).Enabled = False
End Sub
User avatar
tigerwit
Silver
Silver
Posts: 555
Joined: Wed Mar 31, 2010 10:51 pm
Location: สกลนคร
Excel Ver: 2019
Contact:

Re: มุมมองใน excel

#9

Post by tigerwit »

ทดลองแล้ว Code ใช้ได้
แต่ยังไม่สามารถแก้ไขปัญหาตามที่ต้องการได้
เพราะถึงแม้จะปิด เมนู Zoom ได้
แต่ผู้ใช้ยังสามารถปรับมุมมอง จากแถบเครื่องมือได้อยู่ครับ
Attachments
edu2.png
edu2.png (214.06 KiB) Viewed 86 times
Educatian.xls
(220.5 KiB) Downloaded 4 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31190
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มุมมองใน excel

#10

Post by snasui »

:D ในเครื่องผมสามารถปิดได้ทั้งสองที่ตามภาพด้านล่างครับ

ช่วยเปิด Sheet ว่าง ๆ แล้ว Run Code นี้แล้วส่งผลที่ได้มาให้ด้วยครับ

Code: Select all

Sub Test()
    Dim i As Integer
    With Application.CommandBars("Standard")
        For i = 1 To .Controls.Count
            Cells(i, 1) = i
            Cells(i, 2) = .Controls(i).Caption
        Next i
    End With
End Sub
Attachments
DisableZoom.png
DisableZoom.png (52.66 KiB) Viewed 84 times
User avatar
tigerwit
Silver
Silver
Posts: 555
Joined: Wed Mar 31, 2010 10:51 pm
Location: สกลนคร
Excel Ver: 2019
Contact:

Re: มุมมองใน excel

#11

Post by tigerwit »

ทดสอบแล้ว ผลที่ได้
ดังรูปและไฟล์
Attachments
edu3.png
edu3.png (66.7 KiB) Viewed 82 times
Book4.xls
(23.5 KiB) Downloaded 7 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31190
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มุมมองใน excel

#12

Post by snasui »

:lol: ไม่น่าจะครบนะครับ แนบไฟล์นั้นมาครับ ผมจะดูว่า Shortcut เมนู ทีใช้ในการ Zoom ชื่อว่าอะไรหากเป็นภาษาไทยครับ
User avatar
tigerwit
Silver
Silver
Posts: 555
Joined: Wed Mar 31, 2010 10:51 pm
Location: สกลนคร
Excel Ver: 2019
Contact:

Re: มุมมองใน excel

#13

Post by tigerwit »

รูปอีกครั้ง
Attachments
edu4.png
edu4.png (20.2 KiB) Viewed 77 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31190
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มุมมองใน excel

#14

Post by snasui »

:D ลองปรับ Code เป็นตามด้านล่างครับ สังเกตว่าเปลี่ยนเฉพาะ &Zoom: เป็น &ย่อ/ขยาย: เท่านั้นครับ

Code: Select all

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim i As Integer
    With Application.CommandBars("Standard")
        For i = 1 To .Controls.Count
            If .Controls(i).Caption = "&ย่อ/ขยาย:" Then
                .Controls(i).Enabled = True
            End If
        Next i
    End With
    Application.CommandBars("View").Controls(11).Enabled = True
End Sub

Private Sub Workbook_Open()
    Dim i As Integer
    With Application.CommandBars("Standard")
        For i = 1 To .Controls.Count
            If .Controls(i).Caption = "&ย่อ/ขยาย:" Then
                .Controls(i).Enabled = False
            End If
        Next i
    End With
    Application.CommandBars("View").Controls(11).Enabled = False
End Sub
User avatar
tigerwit
Silver
Silver
Posts: 555
Joined: Wed Mar 31, 2010 10:51 pm
Location: สกลนคร
Excel Ver: 2019
Contact:

Re: มุมมองใน excel

#15

Post by tigerwit »

ได้แล้วครับ
กับ 2007 จะใช้ได้ไหมครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31190
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มุมมองใน excel

#16

Post by snasui »

:D ลองเลยครับ ติดตรงไหนก็ถามมาได้เรื่อย ๆ ครับ :mrgreen:
User avatar
tigerwit
Silver
Silver
Posts: 555
Joined: Wed Mar 31, 2010 10:51 pm
Location: สกลนคร
Excel Ver: 2019
Contact:

Re: มุมมองใน excel

#17

Post by tigerwit »

ลองรัน ใน 2007 แล้วครับ
Code ใช้ไม่ได้
ผู้ใช้สามารถย่อ/ขยาย ได้ครับ
ต้องปรับ Code อย่างไงครับ
Attachments
edu5.gif
edu5.gif (120.68 KiB) Viewed 58 times
Educatian.xls
(219 KiB) Downloaded 6 times
User avatar
snasui
Site Admin
Site Admin
Posts: 31190
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มุมมองใน excel

#18

Post by snasui »

:lol: Excel 2007-2010 ไม่เหมือน Excel 2003 ที่สามารถใช้ลำพัง Code VBA ในการจัดการเมนูได้ เพราะจะต้องแก้ไขไฟล์ XML ลองศึกษาจากที่นี่ครับ http://www.rondebruin.nl/ribbon.htm
Post Reply