উত্তর উপরে সম্ভবত একটি ওয়ার্কবুক চেয়ে অপরের সাথে কাজ করবে সক্রিয় ওয়ার্কবুক , যা আমি কি করতে প্রয়োজন ছিল। আমি যা ব্যবহার করেছি তা এখানে
স্টার্টআপে নিশ্চিত হয়ে নিন যে ওয়ার্কবুকটি একা আছে:
Private Sub Workbook_Open()
If Application.Workbooks.Count > 1 Then 'check if there's >1 open wb's in this instance
If MsgBox("This workbook will be moved to a new instance of Excel," & vbLf & _
"so as to not affect performance of your other workbooks.", _
vbOKCancel + vbInformation + vbDefaultButton1 + vbMsgBoxSetForeground) _
= vbCancel Then Exit Sub
Debug.Print Application.Hinstance, "Moving wb to new instance."
OpenInNewInstance
Debug.Print Application.Hinstance, "Moved wb to new instance."
Else
Debug.Print "This wb is in it's own instance. (#" & Application.Hinstance & ")"
End If
End Sub
Sub OpenInNewInstance()
With ThisWorkbook
.Save 'save workbook before making it read-only
.ChangeFileAccess xlReadOnly 'make this wb read-only (so the other isn't)
Shell ("excel.exe /x """ & .FullName & """") 'open current wb in new instance
.Close 'close this workbook
End With
End Sub
এই কোড যায় মডিউল , যাতে তা শুধুমাত্র এই ক্ষেত্রটিকেই খোলা ওয়ার্কবুক, এবং যদি না যখন ওয়ার্কবুক তা অবিলম্বে খোলা হয় দেখতে চেক:ThisWorkbook
- বর্তমান ওয়ার্কবুক সংরক্ষণ করুন
- বর্তমান ডাব্লুবাইকে কেবল পঠনযোগ্য হিসাবে সেট করুন (২ য় অনুলিপিটি সমস্যা হতে আটকাতে)
- একটি নতুন উদাহরণে এক্সেলের খোলার জন্য শেল টু কমান্ড প্রম্পট (এক্সেলের
/x
কমান্ড লাইন সুইচ ব্যবহার করে ), বর্তমান ওয়ার্কবুকের অন্য একটি উদাহরণ লোড করা হচ্ছে
- বর্তমান ওয়ার্কবুক বন্ধ করুন
যদি প্রয়োজন হয় আপনি নতুন কাস্টম কমান্ড লাইনটি নতুন দৃষ্টান্তে নির্দেশিকা ইত্যাদি স্থানান্তর করতে নতুন দৃষ্টান্তটি খোলার সময় ব্যবহার করতে পারেন । আপনি নতুন দৃষ্টান্তের জন্য অ্যাপ্লিকেশন উইন্ডোটি লুকিয়ে রাখার পক্ষে এবং বিষয়গুলি বিবেচনা করতে পারেন।