PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : نحوه اجرای خودکار ماکرو ها



almonz
2011/11/04, 22:30
با سلام

من یه در مورد فعال سازی ماکرو ها دارم .

یک فایل اکسل دارم که توش کلی ماکرو دارم هربار که اجراش می کنم . اکسل یه security warning میده و میکه ماکرو ها disable هستند و باید اونارو فعال کنم . چه جوری میشه فعال کردن ماکرو ها رو به طور خودکار انجام داد .
:huh:

plc_pcb
2011/11/04, 22:41
با سلام

از منوی
file/options/Trust Center/Trust Center Setting/Macro Settings/Enable all macros
رو بزنید و بعد OK رو بزن

jmfnima
2011/11/29, 15:14
با سلام به شما
دوست عزيز اين روشي كه شما ميگيد به صورت دستي هست تموم دوستان دنبال اينن كه به محض باز كردن فايل اكسل ساخته شده بر روي يك سيستم در مرتبه اول ماكروهاي اكسل اون سيستم فعال بشه .

safaei.mehdi@mapnablade.com
2012/05/03, 07:21
با درود بر اساتيد و تيم مديريت محترم جامعه اكسل ايرانيان
آيا كد خاصي وجود دارد كه ماكرو، در هنگام باز شدن فايل به صورت خودكار enable گردد؟
به طوري كه وقتي براي شخص ديگري نيز ارسال شد، ماكروي آن نيز enable گردد.
يعني ديگر نيازي به enableكردن ماكرو به صورت دستي نباشد.
با سپاس

shamsololama
2012/05/03, 09:10
با درود فراوان
برای اینکه ماکروی که در برنامه می نویسیم و بدون اینکه در تنظیم آفیس تغییرب بدیم اجرا بشه
روشهای هست که من قبلا هم آن را در پستی دیگه توضیح داده بودم و نمونه فایل هم قرار داده بودم

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

safaei.mehdi@mapnablade.com
2012/05/03, 13:17
بسيار سپاس گذارم. در اين مورد كه بايد امتياز يك ماكرو رو خريد، اصلا" اطلاعاتي نداشتم.خيلي جالب بود.

mshahin
2012/07/11, 08:47
به لينك زير برويد : http://*****************************/post/40

jmfnima
2014/12/08, 09:40
با سلام به دوستان
آیا نمیشه با برنامه نویسی ماکروها رو به صورت خودکار فعال کرد؟؟

mokaram
2014/12/08, 09:46
میشه منتها بستگی به نیت شما داره
هدفتون بگید واینکه می خواید چیکار کنید

khakzad
2014/12/08, 12:25
سلام
اگرمنظورتون اجرای کدها بدون اجازه کاربر هست خیر نمیشه (به دلایل امنیتی)
برای همین حداقل enable فایل رو باید فعال کنید

اما اگر منظورتون اجرای کد ها بصورت خودکار، بعد از enable کردن هست، چرا میشه

naser1357
2015/02/24, 22:27
سلام
استاد گرامی
من یک ماکرو برای این فایل نوشتم اما برای اجراش حتما باید run را زد حال انکه من میخام بمحض تغییر عدد سل مربوطه این کد اتومات اجرا شود
فایل پیوست می باشد

abootorab
2015/02/24, 23:04
سلام
استاد گرامی
من یک ماکرو برای این فایل نوشتم اما برای اجراش حتما باید run را زد حال انکه من میخام بمحض تغییر عدد سل مربوطه این کد اتومات اجرا شود
فایل پیوست می باشد

با درود
روی شیت ko راست کلیک و سپس View Code رو بزنید سپس کد زیر که کد ماکرو خودتون هست و در رویداد تغییر قرار دادم درون صفحه vb کپی کنید.



Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$1" Then
If Range("g1").Value = 1 Then
Sheets("ts").Select
Range("A3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("ko").Select
Range("A3").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
ElseIf Range("g1").Value = 2 Then
Range("F5").Select
Sheets("se").Select
Range("L6").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("ko").Select
Range("A3").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
End If
End If
End Sub

naser1357
2015/02/24, 23:33
با درود
روی شیت ko راست کلیک و سپس view code رو بزنید سپس کد زیر که کد ماکرو خودتون هست و در رویداد تغییر قرار دادم درون صفحه vb کپی کنید.



private sub worksheet_change(byval target as range)
if target.address = "$g$1" then
if range("g1").value = 1 then
sheets("ts").select
range("a3").select
range(selection, selection.end(xldown)).select
selection.copy
sheets("ko").select
range("a3").select
selection.pastespecial paste:=xlpastevaluesandnumberformats, operation:= _
xlnone, skipblanks:=false, transpose:=false
elseif range("g1").value = 2 then
range("f5").select
sheets("se").select
range("l6").select
range(selection, selection.end(xldown)).select
selection.copy
sheets("ko").select
range("a3").select
selection.pastespecial paste:=xlpastevaluesandnumberformats, operation:= _
xlnone, skipblanks:=false, transpose:=false
end if
end if
end sub




بسیار بسیار ممنونم
چون از طریق ایجاد botton مشکل را هم جل کردم به نظرتان کدام مسیر بهتر است مسیر پیشنهادی شما و یا همان کد ماکرو که با فشردن منویی اجرا خواهد شد؟
قسمت مربوط به شیت دیگر را که توش توضیح دادم مشکل بیشتری دارم ممنون میشوم اون قسمت را هم حل نمایید

abootorab
2015/02/25, 01:04
بسیار بسیار ممنونم
چون از طریق ایجاد botton مشکل را هم جل کردم به نظرتان کدام مسیر بهتر است مسیر پیشنهادی شما و یا همان کد ماکرو که با فشردن منویی اجرا خواهد شد؟
قسمت مربوط به شیت دیگر را که توش توضیح دادم مشکل بیشتری دارم ممنون میشوم اون قسمت را هم حل نمایید

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

naser1357
2015/02/25, 15:30
درود مجدد
اینکه با یک دکمه این کار انجام بشه و یا با تغییر سلول کاملا به نیاز و وضعیت برنامه شما داره و خودتون بسته به سلیقه و نیازتون میتونید انتخاب کنید.
در مورد توضیحی که در شیت دیگه داده بودین راستش زیاد متوجه نشد، اگه یه فایل با مثال آپ کنید بهتر میشه کمک کرد.

استاد فایل اپلود و توضیح در همان شیت دادم
با سپاس مجدد

dark_boy99
2015/02/25, 15:43
سلام منم دستوری رو میخوام که وقتی رو لیست یه عدد انتخاب بشه شیت همون عدد هم باز شه
راهنمایی میکنید?
ببینید من الان ALT+F11 رو زدم و وارد محیط VB شدم
این کد رو وارد کردم

Private Sub Worksheet_Change()If Range("Q14").Value = 1 Then
Sheets("سربرگ").Select
End If
End Sub



F5 که میزنم برا بار اول درسته و میره تو شیت دلخواهم ولی میخوام به محض اینکه کاربر انتخاب کنه درجا بره تو اون شیت
راهی هست؟

dark_boy99
2015/02/25, 15:52
کد رو تو صفحه اصلی زدم و درست شد و مشکلم حل شد
مرسی دوستان

naser1357
2015/02/26, 21:37
درود مجدد
اینکه با یک دکمه این کار انجام بشه و یا با تغییر سلول کاملا به نیاز و وضعیت برنامه شما داره و خودتون بسته به سلیقه و نیازتون میتونید انتخاب کنید.
در مورد توضیحی که در شیت دیگه داده بودین راستش زیاد متوجه نشد، اگه یه فایل با مثال آپ کنید بهتر میشه کمک کرد.

استاد گرام منتظر کمک ارزنده اتون هستم