Note: The other languages of the website are Google-translated. Back to English
English English

วิธีตรวจสอบอย่างรวดเร็วว่าไฟล์ (สมุดงาน) เปิดหรือปิดใน Excel หรือไม่?

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

ตรวจสอบว่าเวิร์กบุ๊กเปิดหรือปิดด้วย VBA

ตรวจสอบว่าเวิร์กบุ๊กเปิดหรือปิดด้วย Kutools for Excel ความคิดที่ดี 3


ตรวจสอบว่าเวิร์กบุ๊กเปิดหรือปิดด้วย VBA

นี่คือรหัส VBA ที่คุณสามารถเรียกใช้เพื่อตรวจสอบว่าสมุดงานนั้นเปิดหรือปิดอยู่หรือไม่

1 กด Alt + F11 กุญแจเพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2 คลิก สิ่งที่ใส่เข้าไป > โมดูล จากนั้นคัดลอกและวาง VBA ลงในไฟล์ โมดูล หน้าต่าง

VBA: ตรวจสอบว่าสมุดงานเปิดหรือปิด

Function IsWorkBookOpen(Name As String) As Boolean
    Dim xWb As Workbook
    On Error Resume Next
    Set xWb = Application.Workbooks.Item(Name)
    IsWorkBookOpen = (Not xWb Is Nothing)
End Function

Sub Sample()
    Dim xRet As Boolean
    xRet = IsWorkBookOpen("combine.xlsx")
    If xRet Then
        MsgBox "The file is open", vbInformation, "Kutools for Excel"
    Else
        MsgBox "The file is not open", vbInformation, "Kutools for Excel"
    End If
End Sub

3. และกด F5 กุญแจสำคัญในการเรียกใช้ vba นี้และกล่องโต้ตอบจะปรากฏขึ้นเพื่อเตือนให้คุณทราบว่าสมุดงานนั้นเปิดอยู่หรือไม่
doc ตรวจสอบว่าไฟล์เปิด 1     doc ตรวจสอบว่าไฟล์เปิด 2

เคล็ดลับ: ใน VBA ข้างต้น“รวมกัน” คือชื่อสมุดงานที่คุณต้องการตรวจสอบคุณสามารถตรวจสอบได้ตามต้องการ


ตรวจสอบว่าเวิร์กบุ๊กเปิดหรือปิดด้วย Kutools for Excel

หากคุณไม่คุ้นเคยกับ VBA คุณสามารถตรวจสอบว่ามีการเปิดสมุดงานอยู่หรือไม่ Kutools สำหรับ Excelด้วยของ การเดินเรือ บานหน้าต่างซึ่งจะช่วยให้คุณสามารถดูสมุดงานที่เปิดอยู่ทั้งหมดในรายการสมุดงานของบานหน้าต่างได้อย่างชัดเจน

Kutools สำหรับ Excel, ที่มีมากกว่า 300 ฟังก์ชั่นที่มีประโยชน์ทำให้งานของคุณง่ายขึ้น 

หลังจาก ติดตั้งฟรี Kutools สำหรับ Excel โปรดทำดังนี้:

1 คลิก Kutools > การเดินเรือ เพื่อเปิดใช้งานบานหน้าต่างนำทาง ดูภาพหน้าจอ:
doc ตรวจสอบว่าไฟล์เปิด 3

2 จากนั้นคลิก สมุดงานและแผ่นงาน เพื่อขยายบานหน้าต่างเพื่อไปที่ สมุดงานและแผ่นงาน มาตรา. และคุณสามารถดูสมุดงานที่เปิดอยู่ทั้งหมดในรายการด้านบน ดูภาพหน้าจอ:
doc ตรวจสอบว่าไฟล์เปิด 4

กับ การเดินเรือ บานหน้าต่างคุณยังสามารถสลับไปมาระหว่างสมุดงานหรือแผ่นงานในรายการได้อย่างรวดเร็ว

คลิกที่นี่เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการนำทาง


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (5)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
VBA ที่ยอดเยี่ยม ใช้งานได้ดี ขอบคุณ.
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ว้าว สุดยอด VBA เรียบง่ายและได้ผล ขอบคุณมาก :)
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เพียงต้องการให้แน่ใจว่าทุกคนรับทราบ ฟังก์ชัน "IsWorkBookOpen" จะสามารถบอกได้เฉพาะว่าเวิร์กบุ๊กเปิดอยู่ในอินสแตนซ์ปัจจุบันของ Excel หรือไม่ หากคุณเปิดหลายอินสแตนซ์ คุณจะต้องเรียกใช้งานในแต่ละอินสแตนซ์เพื่อให้แน่ใจว่าสมุดงาน (ไม่) เปิดอยู่ โดยใช้รหัสนี้เพียงอย่างเดียว
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณสำหรับการเตือนของคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันเพิ่มสิ่งนี้ในรหัสของฉัน แต่ฉันมีปัญหาบางอย่าง ...

ฉันใช้ฟังก์ชันของคุณเพื่อตรวจสอบว่าเวิร์กบุ๊กที่ฉันใช้ข้อมูลบางอย่างเปิดอยู่แล้วหรือไม่ หากเปิดอยู่ ผู้ใช้จะแจ้งแมโคร msgbox บอกให้ปิดเวิร์กบุ๊กและรีสตาร์ทแมโคร จนถึงที่นี่ ทุกอย่างโอเค ปัญหาคือ หลังจากปิดเวิร์กบุ๊กและรีสตาร์ทแมโคร มันบอกว่าเวิร์กบุ๊กนั้นเปิดอยู่ทั้งๆ ที่ไม่ได้เปิดอยู่เลย มีคำแนะนำอะไรบ้างไหม?


รหัส:


ตรวจสอบย่อย_BKG()

เซตวา = ไม่มีอะไร

Confirmação = MsgBox("Deseja realizar a checagem de dados?", vbYesNo + vbExclamation, "มาโคร Aviso")
ถ้า Confirmação = vbNo จากนั้นออกจาก Sub

'---------------------------------------------------------------- --------------------------------------------------'
'/////////////////////////// CHECANDO SE EXSH JÁ ESTA ABERTO\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\'
'---------------------------------------------------------------- --------------------------------------------------'
Dim xRet เป็นบูลีน
xRet = IsWorkBookOpen("EXSH0101.xlsx")
ถ้า xRet แล้ว
MsgBox "O arquivo EXSH0101 já está aberto, por favor, feche o arquivo antes de executar a macro novamente.", vbInformation, "ERRO EXSH0101"
'MsgBox "ไฟล์ EXSH0101 เปิดอยู่แล้ว กรุณาปิดก่อนที่จะรีสตาร์ทมาโคร", vbInformation, "EXSH0101 ERROR"
ออกจาก Sub
End If
'---------------------------------------------------------------- --------------------------------------------------'
'///////////////////////////////////////////\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
'---------------------------------------------------------------- --------------------------------------------------'

ด้วยแอพพลิเคชั่น
.EnableEvents = เท็จ
.ScreenUpdating = เท็จ
จบด้วย

โทร Abrir_Arquivos

โทร Setando_EXSH

โทร Inserir_Formulas

ด้วยแอพพลิเคชั่น
.EnableEvents = จริง
.ScreenUpdating = จริง
จบด้วย

wb.Sheets("Inserir")). เปิดใช้งาน

ย่อยสิ้นสุด
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ