نوشته اصلی توسط
m_d6712
من فایل شما رو هم چندین بار باز کردم در حالی که دستم روی شیفت بود. اما یوزر پسورد اومد.
هر چند نمی دونم چه اتفاقی می افته. فکر می کنم مال تنظیمات اکسل شما باشه.
به هر صورت من گمان می کنم که وقتی شیفت رو نگه میدارید. ماکرو ها غیر فعال میشه.
کاری که شما باید بکنید اینه که تمام شیت ها رو very hidden کنید. و روی محیط ویژوال بیسیک هم پسورد بگذارید.
دو حالت اتفاق می افتد:
1- اگر فرم باز نشود. چون کاربر نمی تواند شیت هارو از حالت very hidden خارج کند. به اطلاعات داخل فایل دسترسی ندارد.
2- اگر فرم باز شود. مجبور از یوزر و پسورد استفاده کند.
این لینک رو امتحان کنید:
http://md6712.com/files/userpass.xlsm
با سلام
فایلی که شما ارسال کردین رو من مشاهده کردم
من فایل شما رو با اکسل 64 بیتی باز کردم و ارور کامپایل ماژول یک رو داد
به نظر میرسه که از dll توی برنامتون استفاده کردین.
ولی من شیت هایی که شما هیدن کرده بودین رو باز کردم
کاری که من کردم این بود
1- من یک فایل اکسل جدید باز کردم
2- فایل شما رو هم باز کردم
3- توی محیط ویژوال بیسیک فایل جدید رفتم و یک ماژول جدید درست کردم و توی اون کد زیر رو زدم
کد PHP:
Sub UnhideAll()
Dim wb As Workbook
Dim ws As Worksheet
Application.DisplayAlerts = False
For Each wb In Workbooks
For Each ws In ActiveWorkbook.Worksheets
ws.Visible = True
Next ws
Next wb
Application.DisplayAlerts = True
End Sub
4- برنامه رو اجرا کردم و شیت های مخفی باز شدند
در مورد دکمه شیفت هم این رو بگم که این از قابلیت های اکسل 2010 برای امنیت بیشتر است که اگر کاربر فایل اکسل مشکوکی رو باز میکنه که میخواد به درد سر نیفته با نگه داشتن دکمه شیفت ماکروها اجرا نمیشه
توی تنظیمات اکسل هم من جایی رو ندیدم که بشه این قابلییت رو غیرفعال کرد
علاقه مندی ها (Bookmarks)