ทางลัดบนเดสก์ท็อป Excel Workbook พร้อมรหัสผ่านอัตโนมัติ?


1

ฉันมีเวิร์กบุ๊ก Excel ที่มีการป้องกันด้วยรหัสผ่านมากมายบนคอมพิวเตอร์ LAN ที่ปลอดภัยของฉัน

เป็นไปได้หรือไม่ที่จะแยกรหัสผ่านเป็นทางลัดดังนั้นมันจะเปิดเวิร์กบุ๊กโดยอัตโนมัติตราบใดที่รหัสผ่านนั้นถูกต้อง?

ตัวอย่างเช่น:

"S:\resources\Audit.xls" -password "mypass"

2
คุณช่วยอธิบายได้ไหม รหัสผ่านไฟล์ได้รับการป้องกันในการเปิดหรือแผ่นงานในสมุดงานได้รับการคุ้มครอง มีความแตกต่างใหญ่ระหว่างสองคนนี้
CharlieRB

มีเพียงไฟล์ที่ได้รับการป้องกันเมื่อคุณเปิดใช้งานในชีตภายในทั้งหมดแล้ว
โอเวนเมลเบิร์น

คำตอบ:


2

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

ใช้ทางลัดที่มีลักษณะดังนี้:

"C:\Program Files\Microsoft Office\Office12\EXCEL.EXE" /e/myfilename/mypassword "C:\MyExcelFiles\test.xlsb"

คุณสามารถใช้รหัสต่อไปนี้เพื่อรับบรรทัดคำสั่ง - จากนั้นคุณจะต้องแยกพารามิเตอร์ที่คุณผ่านด้วย / e เมื่อทั้งบรรทัดได้รับคืน

Declare Function StrLenA Lib "kernel32.dll" Alias "lstrlenA" (ByVal Ptr As Long) As Long
Declare Function GetCommandLineA Lib "kernel32.dll" () As Long
Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" (ByRef pDst As Any, pSrc As Any, ByVal ByteLen As Long)

Function GetCommandLine() As String

Dim CmdStr As Long
Dim N As Long
Dim Buffer As String

   CmdStr = GetCommandLineA 'Get a pointer to a string, which contains the command line
   N = StrLenA(CmdStr) 'Get the length of that string
   Buffer = String(N, Chr$(0)) 'Create a buffer
   CopyMemory ByVal Buffer, ByVal CmdStr, N 'Copy to the buffer
   GetCommandLine = Buffer

End Function

ดูเหมือนคำตอบ
datatoo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.