ایجاد سوال
dark_mode
0 دوستدار 0 امتیاز منفی
12 visibility
موضوع: آفیس توسط:

هنگامی که شخصی از ورک بوک Lorenzos استفاده می کند، دوست دارد فقط کلید F2 در دسترس کاربر باشد. او فکر می کند که آیا راهی برای غیرفعال کردن تمام کلیدهای تابع در اکسل، به استثنای کلید F2 وجود دارد ؟

راهی وجود دارد، اما باید با استفاده از ماکرو انجام شود. به طور خاص، شما می خواهید از روش OnKey شی Application استفاده کنید. این کد همه کلیدهای عملکرد را غیرفعال می کند به استثنای F2 :

Private Sub Workbook_Open()
    Application.OnKey "{F1}", ""
    Application.OnKey "{F3}", ""
    Application.OnKey "{F4}", ""
    Application.OnKey "{F5}", ""
    Application.OnKey "{F6}", ""
    Application.OnKey "{F7}", ""
    Application.OnKey "{F8}", ""
    Application.OnKey "{F9}", ""
    Application.OnKey "{F10}", ""
    Application.OnKey "{F11}", ""
    Application.OnKey "{F12}", ""
End Sub

ماکرو باید به ماژول ThisWorkbook اضافه شود و با باز شدن ورک بوک به طور خودکار اجرا می شود.

در صورت تمایل، می توانید ماکرو را کمی کوتاهتر کنید:

Private Sub Workbook_Open()
    Dim sTemp As String
    Dim J As Integer

    For J = 1 to 12
        If J <> 2 Then
            sTemp = "{F" & Trim(Str(J)) & "}"
            Application.OnKey sTemp, ""
        End If
    Next J
End Sub

همچنین باید مطمئن شوید که وقتی ورک بوک را می بندید، همه کلیدهای عملکرد را دوباره فعال کنید. این ماکرو دوباره باید به ماژول ThisWorkbook اضافه شود:

Private Sub Workbook_BeforeClose(CANCEL As Boolean)
    Application.OnKey "{F1}"
    Application.OnKey "{F3}"
    Application.OnKey "{F4}"
    Application.OnKey "{F5}"
    Application.OnKey "{F6}"
    Application.OnKey "{F7}"
    Application.OnKey "{F8}"
    Application.OnKey "{F9}"
    Application.OnKey "{F10}"
    Application.OnKey "{F11}"
    Application.OnKey "{F12}"
End Sub

همچنین می توانید از نسخه کوتاه تری از همان کد استفاده کنید:

Private Sub Workbook_BeforeClose(CANCEL As Boolean)
    Dim sTemp As String
    Dim J As Integer

    For J = 1 to 12
        If J <> 2 Then
            sTemp = "{F" & Trim(Str(J)) & "}"
            Application.OnKey sTemp
        End If
    Next J
End Sub
اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

looks_5نام شما برای نمایش - اختیاری
حریم شخصی : آدرس ایمیل شما محفوظ میماند و برای استفاده های تجاری و تبلیغاتی به کار نمی رود
عدد چهار رقمی در تصویر را وارد کنید

برای جلوگیری از این تایید در آینده, لطفا وارد شده یا ثبت نام کنید.
اگر حساب گوگل دارید به راحتی وارید شوید

0 پاسخ وجود دارد

سوال مشابهی یافت نشد

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما

23.2k سوال

8.5k پاسخ

608 دیدگاه

9.7k کاربر

103 نفر آنلاین
0 عضو و 103 مهمان در سایت حاضرند
بازدید امروز: 3388
بازدید دیروز: 21973
بازدید کل: 15276255
...