[VBA] Close workbook แล้วให้ซ่อน sheet
Posted: Thu May 31, 2018 2:10 pm
ขอสอบถามหน่อยครับพอดีติดปัญหาครับ
1. อยากจะให้เมื่อปิด Workbook แล้วให้ Sheet ที่ไม่ได้ชื่อ Fill in ซ่อนแบบ VeryHidden แล้วเปิดไฟล์มาให้โชว์แต่ Sheet "Fill in"
โดยที่ไม่ใช้ Workbook_Open()
- แต่เมื่อทำแล้วใช้แบบ Private Sub Workbook_BeforeClose(Cancel As Boolean) พอปิดแล้วเปิดไฟล์ขึ้นมาใหม่
Sheet ก็ยังคงโชว์ขึ้นให้เห็นทุก Sheet แต่เมื่อลองใช้แบบ Sub ธรรมดาปรากฎว่าใช้ได้ครับ พอจะแก้ไขอย่างไหรได้บ้างครับ
2. UserFrom , มีปัญหา Textbox UserName และ Password ใช้ช่อง ControlSource ไม่ได้ครับ พอใช้แล้วปิด เปิดไฟล์ใหม่จะเข้าไฟล์ไม่ได้ขึ้น ตย.เช่น ที่ช่อง ControlSource : Admin!B5 , Admin!B6 จะขึ้น Path/File access error
UserName : 1 Password 1
1. อยากจะให้เมื่อปิด Workbook แล้วให้ Sheet ที่ไม่ได้ชื่อ Fill in ซ่อนแบบ VeryHidden แล้วเปิดไฟล์มาให้โชว์แต่ Sheet "Fill in"
โดยที่ไม่ใช้ Workbook_Open()
- แต่เมื่อทำแล้วใช้แบบ Private Sub Workbook_BeforeClose(Cancel As Boolean) พอปิดแล้วเปิดไฟล์ขึ้นมาใหม่
Sheet ก็ยังคงโชว์ขึ้นให้เห็นทุก Sheet แต่เมื่อลองใช้แบบ Sub ธรรมดาปรากฎว่าใช้ได้ครับ พอจะแก้ไขอย่างไหรได้บ้างครับ
2. UserFrom , มีปัญหา Textbox UserName และ Password ใช้ช่อง ControlSource ไม่ได้ครับ พอใช้แล้วปิด เปิดไฟล์ใหม่จะเข้าไฟล์ไม่ได้ขึ้น ตย.เช่น ที่ช่อง ControlSource : Admin!B5 , Admin!B6 จะขึ้น Path/File access error
UserName : 1 Password 1
Code: Select all
Sub CloseWorkbook()
Sheet1.Activate
Dim WkSht As Worksheet
For Each WkSht In ThisWorkbook.Worksheets
If WkSht.Name <> "Fill in" Then WkSht.Visible = xlSheetVeryHidden
Next WkSht
ThisWorkbook.Save
ActiveWindow.Close
End SubCode: Select all
Private Sub Workbook_BeforeClose(Cancel As Boolean)
CloseWorkbook
End Sub