صفحه 1 از 2 12 آخرینآخرین
نمایش نتایج: از شماره 1 تا 10 , از مجموع 11

موضوع: روش متفاوتی برای اعلام لزوم فعال سازی ماکرو در نوار security warning !

  1. #1


    آخرین بازدید
    2023/12/24
    تاریخ عضویت
    March 2017
    نوشته ها
    142
    امتیاز
    59
    سپاس
    83
    سپاس شده
    47 در 28 پست
    تعیین سطح نشده است

    روش متفاوتی برای اعلام لزوم فعال سازی ماکرو در نوار security warning !

    با سلام و احترام
    با توجه به اهمیت فعال سازی ماکرو به هنگام نمایش نوار SECURITY WARNING ، بمنظور اجرای صحیح برنامه ، ابتکاری به ذهنم رسید ، که خواستم از اساتید عزیز راهنمایی بگیرم .
    یک عکسی با محتوای اعلام لزوم فعال سازی ماکرو در اکسل وارد کردم که کاربر به هنگام ورود به فایل دارای ماکرو ، با این عکس و لزوم فعال سازی ماکرو مواجه می شود !
    با فعال سازی ماکرو در نوار SECURITY WARNING ، می خوام این عکس حذف بشه ! و محتوای اصلی برنامه مشخص بشه !
    در حال حاضر میشه با ضبط ماکرو و با دستور حذف عکس، کار رو انجام داد و به نتیجه رسید، اما مشکل اونجا پیدا می شه که بعد از ذخیره شدن فایل، دفعه بعد در هنگام اجرای برنامه و فعال سازی ماکرو، دستور حذف عکس به مشکل بر می خوره و Error میده ! چون عکس قبلا" حذف شده و الان وجود نداره!
    اگر ممکنه اساتید عزیز کدی رو لطف کنند که اگر عکس مربوطه وجود داشت ، عکس مربوطه پاک بشه ، در غیر این صورت هیچ اقدامی صورت نگیره .
    خیلی ممنونم.
    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  123.jpg
مشاهده: 24
حجم:  377.8 کیلو بایت
    اخطار: این یک موضوع قدیمی است
    به دلیل قدیمی بودن موضوع، ممکن است برخی فایل های ضمیمه به درستی کار نکنند. لطفا در صورت عدم ضرورت، از بالا آوردن موضوعات قدیمی خودداری نمایید.
    فايل هاي پيوست شده فايل هاي پيوست شده
    پاسخ مورد نظر براي اين تاپيك ارسال شده است.
    ویرایش توسط Skynet : 2017/04/11 در ساعت 12:54

  2. سپاس ها (1)


  3.  

  4. #2


    آخرین بازدید
    2023/05/10
    تاریخ عضویت
    January 2017
    محل سکونت
    کرمانشاه
    نوشته ها
    360
    امتیاز
    571
    سپاس
    98
    سپاس شده
    550 در 269 پست
    سطح اکسل
    80.00 %

    با سلام
    ایده خوبی است.. تشکر
    با کنترل کردن خطا میتوان از بروز مشکل جلوگیری کرد
    ...
    کدی که در زمان باز شدن اکسل اجرا میشه رو به صورت ذیل اصلاح کنید.
    .
    کد PHP:
    Private Sub WORKBOOK_OPEN()
        
    On Error GoTo sucess_Open
        ActiveSheet
    .Shapes.Range(Array("Picture 1")).Select
        Selection
    .Delete
    sucess_Open
    :
        
    Range("L10:W18").Select
        ActiveCell
    .FormulaR1C1 "Hello My Friend :)"
        
    Range("L10:W18").Select
    End Sub 
    بهترین راه ذخیره زمان(یادگیری)،،حل مشکلات دیگران است
    مشکلات دیگران، روزی مشکلات ما هم خواهد شد


  5. سپاس ها (1)


  6. #3


    آخرین بازدید
    2023/12/24
    تاریخ عضویت
    March 2017
    نوشته ها
    142
    امتیاز
    59
    سپاس
    83
    سپاس شده
    47 در 28 پست
    تعیین سطح نشده است

    نقل قول نوشته اصلی توسط rasools13 نمایش پست ها
    با سلام
    ایده خوبی است.. تشکر
    با کنترل کردن خطا میتوان از بروز مشکل جلوگیری کرد
    ...
    کدی که در زمان باز شدن اکسل اجرا میشه رو به صورت ذیل اصلاح کنید.
    .
    کد PHP:
    Private Sub WORKBOOK_OPEN()
        
    On Error GoTo sucess_Open
        ActiveSheet
    .Shapes.Range(Array("Picture 1")).Select
        Selection
    .Delete
    sucess_Open
    :
        
    Range("L10:W18").Select
        ActiveCell
    .FormulaR1C1 "Hello My Friend :)"
        
    Range("L10:W18").Select
    End Sub 
    باسلام و احترام
    خواهش می کنم، خوشحالم که ایده مورد نظر براتون جذاب بوده.
    مرسی از کد عالی تون. فکر می کنید برای بهینه شدن نحوه اجرای این ایده بشه اینطور برنامه نویسی کرد :

    در هنگام اجرای فایل اکسل عکس نمایش داده بشه و با فعال کردن ماکرو ، عکس مربوطه پنهان بشه و هنگام خارج شدن از فایل ( چه ذخیره بشه و چه نشه ) در آخرین لحظه خروج بصورت اتوماتیک به شیت عکس رفته و عکس ظاهر بشه !
    که در دفعه بعد، هنگام اجرای برنامه ما در شیت مورد نظر سازنده فایل هستیم و عکس دوباره ظاهر بشه ! در این صورت اگر ماکرو فعال بود عکس سریع پنهان میشه و اگر نه ، دوباره عکس اونجاست و اشاره به فعال سازی کنه !
    * ( شیت مورد نظر بطور مثال شیت HOME و راهنمای فایل هست که کاربران بایستی برای دسترسی به همه قسمت های فایل بهتره از اونجا با زدن لینک های مربوطه اقدام کنند )

    مزایای این روش :
    اگر فایل رو من اجرا کنم و ماکرو رو فعال کنم دیگه عکس پاک نمیشه ! و فقط پنهان میشه و با ذخیره و خروج از فایل ، و ارائه فایل به شخص دیگه ، هنگام اجرای فایل کاربر شیت مورد نظر سازنده فایل رو می بینه و عکس نمایش داده میشه و ماکرو رو فعال میکنه و عکس دوباره پنهان میشه و این پروسه برای همیشه ادامه پیدا می کنه و کاربران در اولین اقدام ماکرو رو فعال می کنن.
    خیلی ممنونم از شما جناب rasools13 عزیز.برای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  456.jpg
مشاهده: 25
حجم:  383.4 کیلو بایت
    فايل هاي پيوست شده فايل هاي پيوست شده
    ویرایش توسط Skynet : 2017/04/11 در ساعت 12:43

  7. #4


    آخرین بازدید
    2023/05/10
    تاریخ عضویت
    January 2017
    محل سکونت
    کرمانشاه
    نوشته ها
    360
    امتیاز
    571
    سپاس
    98
    سپاس شده
    550 در 269 پست
    سطح اکسل
    80.00 %

    کد های ذیل رو جایگزین کنید
    همون چیزی هست که میخواهین
    .
    کد PHP:
    Private Sub WORKBOOK_OPEN()
        
    On Error GoTo sucess_Open
        Sheets
    ("Home").Shapes.Range(Array("Picture 1")).Visible msoFalse
    sucess_Open
    :
        
    Range("L10:W18").Select
        ActiveCell
    .FormulaR1C1 "Hello My Friend :)"
        
    Range("L10:W18").Select
    End Sub
    '
    '

    Private Sub Workbook_BeforeClose(Cancel As Boolean)
        
    On Error Resume Next
        Sheets
    ("Home").Shapes.Range(Array("Picture 1")).Visible msoTrue
        Sheets
    ("Home").Select
    End Sub 
    فايل هاي پيوست شده فايل هاي پيوست شده
    بهترین راه ذخیره زمان(یادگیری)،،حل مشکلات دیگران است
    مشکلات دیگران، روزی مشکلات ما هم خواهد شد


  8. سپاس ها (1)


  9. #5


    آخرین بازدید
    2023/12/24
    تاریخ عضویت
    March 2017
    نوشته ها
    142
    امتیاز
    59
    سپاس
    83
    سپاس شده
    47 در 28 پست
    تعیین سطح نشده است

    بله دقیقا ، خیلی خیلی ممنونمممم
    دارم فکر می کنم آیا راهی هست زمان خارج شدن از فایل عکس نمایش داده نشه! ولی موقع باز کردن فایل ( و عدم فعال بودن ماکرو ) عکس در ابتدا نمایش داده بشه !

    معایب ایده فعلی :
    1- حرفه ای نبودن نمایش تصویر در هنگام خروج از فایل
    2- اگر کاربر هنگام خروج از فایل، کلید Cancel رو انتخاب کنه عکس باقی می مونه! و حتی می تونه اونو پاک کنه ! که در این صورت بعد از Save در دفعات اجرای بعدی برنامه دیگه عکس نشون داده نمیشه!

    حالت ایده آل اینه که :
    هر بار در هنگام وارد شدن به فایل اگر ماکرو غیر فعال بود عکس نمایش داده بشه که با فعال سازی ماکرو عکس اتوماتیک پنهان بشه .
    و تحت هیچ شرایطی کاربر نتونه به عکس مورد نظر دسترسی داشته و اون رو ویرایش و یا حذف کنه .

    برای این حالت ایده ای به ذهنم نمی رسه ، بنظر شما میشه به این هدف دست پیدا کرد ؟!
    ممنونممم

  10. #6


    آخرین بازدید
    2023/05/10
    تاریخ عضویت
    January 2017
    محل سکونت
    کرمانشاه
    نوشته ها
    360
    امتیاز
    571
    سپاس
    98
    سپاس شده
    550 در 269 پست
    سطح اکسل
    80.00 %

    با سلام
    بله به این هدف میشه دست پیدا کرد
    با اکسل تنها نمیشه چای درست کرد.

    .
    کد me.save در خط آخر متد بسته شدن قرار بدین.
    با اینکار کارهای انجام شده ذخیره شده و دیگر اون پیغام بسته شدن بدون ذخیره رو نشون نمیده و مستقیم برنامه بسته میشه
    .
    کد PHP:
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
        
    On Error Resume Next
        Sheets
    ("Home").Shapes.Range(Array("Picture 1")).Visible msoTrue
        Sheets
    ("Home").Select
        Me
    .Save
    End Sub 
    .
    در ضمن در هر صورت کاربر اگر قصد خرابکاری داشته باشه و بخواد عکس رو پاک کنه.. کار سخت نیست
    ما تنها فایل عکس رو نمایش داده و مخفی میکنیم
    کاربر به راحتی میتونه از قسمت selection panel به صورت دستی دوباره عکس رو نمایش بده.
    .
    به نظرم راه حل بهتر اینه که به جای تصویر یک متن رنگی و بزرگ رو در سلول ها نمایش داده و حذف کنید
    متنی مثلا به این صورت:
    کاربر گرامی جهت استفاده از برنامه لطفا از نوار زرد رنگ ظاهر شده در بالا بر روی enable content کلیک نمایید
    ویرایش توسط rasools13 : 2017/04/13 در ساعت 02:21
    بهترین راه ذخیره زمان(یادگیری)،،حل مشکلات دیگران است
    مشکلات دیگران، روزی مشکلات ما هم خواهد شد


  11. سپاس ها (1)


  12. #7


    آخرین بازدید
    2023/12/24
    تاریخ عضویت
    March 2017
    نوشته ها
    142
    امتیاز
    59
    سپاس
    83
    سپاس شده
    47 در 28 پست
    تعیین سطح نشده است

    سلام مهندس نصف شبی کلی خندیدممم مرسی داداش
    آقا فقط یه نکته :
    اون پیغامه خوبه بیاد ، شاید کاربر تغییراتی رو انجام بده و نخواد ذخیره کنه و خارج بشه ! با این روش هنگام خروج فایل ذخیره میشه!

    بنظرت راهی هست اون پیغام ذخیره یا عدم ذخیره بیاد ولی عکس در آخر نشون داده نشه ؟!
    مرسی از کدها و ترفندهای خوبت ، از هر کدوم در بخش های مختلفی از کارم می تونم استفاده کنم خدا خیرت بده

  13. #8


    آخرین بازدید
    2023/05/10
    تاریخ عضویت
    January 2017
    محل سکونت
    کرمانشاه
    نوشته ها
    360
    امتیاز
    571
    سپاس
    98
    سپاس شده
    550 در 269 پست
    سطح اکسل
    80.00 %

    نقل قول نوشته اصلی توسط Skynet نمایش پست ها
    سلام مهندس نصف شبی کلی خندیدممم مرسی داداش
    آقا فقط یه نکته :
    اون پیغامه خوبه بیاد ، شاید کاربر تغییراتی رو انجام بده و نخواد ذخیره کنه و خارج بشه ! با این روش هنگام خروج فایل ذخیره میشه!

    بنظرت راهی هست اون پیغام ذخیره یا عدم ذخیره بیاد ولی عکس در آخر نشون داده نشه ؟!
    مرسی از کدها و ترفندهای خوبت ، از هر کدوم در بخش های مختلفی از کارم می تونم استفاده کنم خدا خیرت بده
    .
    مهندس نیستم... مدیریت خوندم
    .
    کد ذیل رو جایگزین کنید تا قبل از بسته شدن به کاربر پیغام دهد.
    .
    کد PHP:
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
        
    On Error Resume Next
        Dim Ans
    captiontitle As String
        title 
    "اخطار برنامه"
        
    caption "تمامي تغييرات صورت گرفته ذخيره شده و برنامه بسته خواهد شد. برنامه بسته شود؟"
        
    Ans MsgBox(captionvbYesNotitle)
        If 
    Ans vbYes Then
            Sheets
    ("Home").Shapes.Range(Array("Picture 1")).Visible msoTrue
            Sheets
    ("Home").Select
            Me
    .Save
        
    Else
            
    Cancel True
        End 
    If
    End Sub 
    بهترین راه ذخیره زمان(یادگیری)،،حل مشکلات دیگران است
    مشکلات دیگران، روزی مشکلات ما هم خواهد شد


  14. سپاس ها (1)


  15. #9


    آخرین بازدید
    2023/12/24
    تاریخ عضویت
    March 2017
    نوشته ها
    142
    امتیاز
    59
    سپاس
    83
    سپاس شده
    47 در 28 پست
    تعیین سطح نشده است

    سلام دوست من
    رشته مدیریت عالیههه.
    مرسی از کد جدید، واقعا هر کدوم از کدهایی که میدی یه خلاقیت جدید توش داره و میشه در جاهای مختلف ازش استفاده کرد tnx

    در این روش هم ، یجورایی میشه یجوری سیستم رو دور زد و به عکس مربوطه دسترسی داشت و اونو ویرایش و یا حذف کرد! طی مراحل مشخص شده در تصویر زیر :

    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام:  ok.jpg
مشاهده: 15
حجم:  270.6 کیلو بایت

    پیغام آخری که توسط ویندوز نشون داده میشه خوبه ، مشکلی نداره . نیازی نیست در آخر برای خروج پیغام خاصی نشون داده بشه ، فقط زمان خروج عکس نشون داده نشه ! ولی زمان ورود، عکس وجود داشته باشه ! بنظرت میشه اینجوری باشه ؟

    به بیان صریح تر و کامل تر :
    موقعی که فایل اجرا میشه : اگر 1 -ماکرو غیر فعال باشه , عکس وجود داشته باشه و نشون داده بشه و با فعال سازی ماکرو عکس پنهان بشه .
    2- اگر ماکرو فعال باشه عکس بسرعت پنهان بشه و اصلا دیده نشه !

    موقعی که فایل بسته میشه : هیچ اتفاق خاصی نیافته و پیغام همیشگی خود اکسل ظاهر بشه که میگه : ذخیره بشود ؟ نشود ؟ Cancel ?

    The End.

    این که من در اولین مرتبه گفتم موقع خروج، عکس مجددا" نمایش داده بشه بخاطر اینکه فکر کردم برای رسیدن به حالت بالا، نمیشه کاری کرد! ولی الان بهت ایمان دارم و فکر می کنم بتونی برای رسیدن به حالت ایده آل بالا ایده ای داشته باشی

  16. #10


    آخرین بازدید
    2023/05/10
    تاریخ عضویت
    January 2017
    محل سکونت
    کرمانشاه
    نوشته ها
    360
    امتیاز
    571
    سپاس
    98
    سپاس شده
    550 در 269 پست
    سطح اکسل
    80.00 %

    تنها راه همونی ک در پست قبلی گذاشتم
    مخفی کردن عکس یک عمل جدید هست و نیاز به ذخیره شدن دارد واسه همین اکسل پیغام رو در زمان بسته شدن نشون میده
    ..
    واسه همین اومدن اتوماتیک ذخیره کردم... گفتی پیغام نشون بده بهتره شاید کاربر نخواد ذخیره کنه
    اومدم پیغام گذاشتم.. الان میگین پیغام لازم نیست همون پیغام آخر خوبه
    ..
    با این کد آخر... ظاهر شدن دوباره عکس اخرین عمل هست و قبل از آن هم یک اخطار نشون داده میشه (میتونید این پیغام رو شبیه پیغام خود اکسل درست کنید که کاربر متوجه نشه)... تو این هیچ مشکلی نمیبینم...
    در ضمن باز هم میگم از متن بجای عکس استفاده کنید بهتره....
    بهترین راه ذخیره زمان(یادگیری)،،حل مشکلات دیگران است
    مشکلات دیگران، روزی مشکلات ما هم خواهد شد



صفحه 1 از 2 12 آخرینآخرین

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پیغام Privacy Warning پس از Save کردن ماکرو
    توسط aminkarami در انجمن خطاها در ويژوال بيسيك - Errors in VBA
    پاسخ ها: 1
    آخرين نوشته: 2015/08/24, 19:38
  2. خطای Security Alert در اکسل
    توسط ashkan در انجمن خطاها در ويژوال بيسيك - Errors in VBA
    پاسخ ها: 4
    آخرين نوشته: 2014/09/10, 12:26
  3. circular Reference warning چیه؟
    توسط R6E5 در انجمن سوالات اكسل - Excel Questions
    پاسخ ها: 5
    آخرين نوشته: 2014/06/15, 18:35
  4. macro security
    توسط khakzad در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 5
    آخرين نوشته: 2012/07/20, 17:47

بازدید کنندگان با جستجو های زیر این صفحه را پیدا کرده اند

انجمن اكسل ايران , اكسل , اكسس , سوال و جواب اكسل , سوال اكسس , انجمن اكسل ايران , توابع اكسل, آموزش اكسل, آموزش اكسس, VBA, ويژوال بيسيك

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  
  • BB code ها فعال هستند
  • شکلک ها فعال هستند
  • کد [IMG] فعال است
  • کد [VIDEO] فعال است
  • کد HTML غیر فعال است