samycalls2020 قام بنشر مايو 7, 2020 قام بنشر مايو 7, 2020 السلام عليكم .. الأخوة الكرام .. هل يوجد كود لتشغيل ماكرو محدد أو أكثر فى ملف به الكثير من الماكرو
أفضل إجابة عبدالفتاح في بي اكسيل قام بنشر مايو 8, 2020 أفضل إجابة قام بنشر مايو 8, 2020 على حد علمي يمكنك استدعاءه عن طريق ادراج موديل خاص او زر تحكم بالمكروات المطلوب استدعائها كتابة كلمة call ثم اسم الماكرو مثلا لديك اكثر من ماكرو sub macro1() , sub macro2 تكتب call macro1 , call macro 2
samycalls2020 قام بنشر مايو 8, 2020 الكاتب قام بنشر مايو 8, 2020 الأستاذ عبد الفتاح / سلام الله عليكم مثلا لديك اكثر من ماكرو sub macro1() , sub macro2 تكتب call macro1 , call macro 2 السؤال .. أين نكتب هذا ؟ فى نفس الماكرو المطلوب استدعائه .. أم فى ماكرو منفصل وماذا إن كان هناك عدد من الماكرو تلقائى (يعمل بدون زر) وغيرهم يعمل بزر لأن المشكلة عمل عدد كبير من الماكرو فى نفس الوقت يسبب بطئ شديد
عبدالفتاح في بي اكسيل قام بنشر مايو 8, 2020 قام بنشر مايو 8, 2020 يمكنك وضعه في نفس الماكرو التي تعمل عليه بشرط ان تتاكد من اسم الماكرو الصحيح الذي تريد استدعائه اما اذا اردت ان يعمل تلقائي على حسب طبيعة عملك اذا كنت تعمل على ورقة وتريد حدوث تغيير على ورقة بمجرد الكتابة في الخلايا يمكنك وضعها في هذه الاحداث من ورقة العمل Private Sub Worksheet_Change(ByVal Target As Range) End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) End Sub اما اذا اردت ان يعمل بمجرد فتح الملف يمكنك وضعه في هذا الحدث من ملف العمل Private Sub Workbook_Open() End Sub
samycalls2020 قام بنشر مايو 8, 2020 الكاتب قام بنشر مايو 8, 2020 أستاذى الفاضل .. أين جملة الأستدعاء فى ماذكر من أمثله مثال هذا كود يعمل بزر Sub للتصفية() ' لنسخ حساب القائمة المنسدلة من أرصدة الى الخزينة Sheets("الخزينة").Range("H9").Value = Range("D7").Value Application.ScreenUpdating = False Dim ws As Worksheet Dim sh As Worksheet Dim lr As Long Set ws = Sheets("الخزينة") Set sh = Sheets("تصفية") Application.ScreenUpdating = False ' إلغاء الفرز والتصفية إن وجد لجدول3 Sheets("الخزينة").Range("الجدول3").AutoFilter ' تصفية للعمود 13 P Sheets("الخزينة").Range("الجدول3").AutoFilter Field:=13, Criteria1:= _ "<>" Application.ScreenUpdating = False sh.Range("D12:N11011").ClearContents lr = sh.Cells(Rows.Count, 4).End(xlUp).Row + 1 Application.ScreenUpdating = False ws.Range("D12:K11011").SpecialCells(xlCellTypeVisible).Copy sh.Range("D" & lr).PasteSpecial xlPasteValues Application.CutCopyMode = False Application.ScreenUpdating = False ' إلغاء تصفية للعمود 13 P Sheets("الخزينة").Range("الجدول3").AutoFilter Field:=13 End Sub أين تكون الأضافة حتى لايعمل أى كود أخر فى الملف وليس فى الورقة نفسها فقط سواء كان تلقائى أو بزر
عبدالفتاح في بي اكسيل قام بنشر مايو 8, 2020 قام بنشر مايو 8, 2020 انا لم افهم جملة حتى لايعمل أى كود أخر فى الملف الى ماذا تريد ان تصل لا استطيع ان اقول لك في بداية ام في الوسط لان البرمجة يجب تحديدها بخطوات متسلسلة جرب ضعه في البداية اذا لم ينجح ارفق ملف ووضح الكود الذي تريد استدعائه ومتى يتم استدعائه والنتائج المتوقعة حتى يتفاعل معك بقية الاساتذة
samycalls2020 قام بنشر مايو 9, 2020 الكاتب قام بنشر مايو 9, 2020 الكود السابق .. أ / عبد الفتاح .. كما قلت لك عند استخدام هذا الكود على سبيل المثال وهو واحد من أكود كثيرة يأخد وقت طويل جداً حت يعطى النتيجة المطلوبه فقمت بحذف باقى الأكود وتشغيل الكود السابق ذكره أعطى نتيجه بسرعة كبيره .. ده معناه أن هنالك أكود أخرى تعمل وتسبب بطء وتعطيل لهذا الكود وهذا الكلام ينطبق على كل الأكواد .. فما أطلبه هو عند الضغط على زر أى ماكرو يعمل دون غيره .. عن طريق أن تضيف فية أو تعدلة أو أى شيء أخر المهم أن يعمل منفردا أى يعمل هو دون غيره .. أرجوا أن أكون وضحت ما أقصده
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.