عصام مسعد قام بنشر مايو 11, 2016 قام بنشر مايو 11, 2016 السلام عليكم عندى كود وهو Sub AAA() Sheets("123").Range("A1:A500").ClearContents End Sub ولكنه لا يمسح الخانات اللى بها فلتر فأنا اريد يمسح جميع الخانات حتى المخفيه مع الشكر
عبدالسلام ابوالعوافي قام بنشر مايو 11, 2016 قام بنشر مايو 11, 2016 (معدل) هذا الكود يسمح الخلايا المخفية Sub AAA() Dim rng As Range For Each rng In Sheets("123").Range("A1:A500") rng = "" Next End Sub تم تعديل مايو 11, 2016 بواسطه عبدالسلام ابوالعوافي 1
سليم حاصبيا قام بنشر مايو 12, 2016 قام بنشر مايو 12, 2016 (معدل) لا ضرورة للحلقات التكرارية يكفي هذا Sub del_rg() Sheets("123").Range("a1:a500")="" End Sub تم تعديل مايو 12, 2016 بواسطه سليم حاصبيا 4
عبدالسلام ابوالعوافي قام بنشر مايو 12, 2016 قام بنشر مايو 12, 2016 استاذ سليم .. يمكنك ان تطبق الكودين علي الخلايا المفلترة وتجد الفرق .. كودك صحيح في حالة الخلايا المخفية وليست المفلترة 1
عصام مسعد قام بنشر مايو 12, 2016 الكاتب قام بنشر مايو 12, 2016 (معدل) شكرا للاستاذ سليم حاصبيا وشكرا ايضا للاستاذ عبدالسلام ابو العوافى وبالفعل الكود الخاص بالاستاذ عبدالسلام ابو العوافى هو ما كنت ابحث عنه ولكن هل يوجد كود اخر يكون اسرع من ذلك حيث ان الجدول الخاص بى يحتوى على حوالى 5000 سطر مع الشكر وجعله الله فى ميزان حسناتكم تم تعديل مايو 12, 2016 بواسطه عصام مسعد كلمه على
سليم حاصبيا قام بنشر مايو 12, 2016 قام بنشر مايو 12, 2016 جرب هذا الكود Sub del_rg() With Sheets("123") .AutoFilterMode = False .Range("a1:a5000") = "" End With End Sub 1
عصام مسعد قام بنشر مايو 12, 2016 الكاتب قام بنشر مايو 12, 2016 منذ ساعه, سليم حاصبيا said: جرب هذا الكود Sub del_rg() With Sheets("123") .AutoFilterMode = False .Range("a1:a5000") = "" End With End Sub جميل بس كنت محتاج كود ميفكش الفلتر لاننى عامل الفلتر فى مكان غير المطلوب مسحه بمعنى اننى عامل فلتر فى B واريد ان امسح A . وشكرا جزيلا للاهتمام
ياسر خليل أبو البراء قام بنشر مايو 12, 2016 قام بنشر مايو 12, 2016 أعتقد أنه من الأفضل إرفاق ملفك المرفق ولكن كفكرة مبدئية يمكن إزالة الفلترة بالكود ثم مسح النطاق المطلوب مسحه ثم إعادة الفلترة مرة أخرى ، وبالتالي يتم حل المشكلة 2
عبدالسلام ابوالعوافي قام بنشر مايو 12, 2016 قام بنشر مايو 12, 2016 كود اسرع Sub AAA() Dim i As Integer With Application .Calculation = xlCalculationManual .ScreenUpdating = False .EnableEvents = False End With For i = 1 To 5000 Cells(i, 1) = Null Next With Application .ScreenUpdating = True .EnableEvents = True .Calculation = xlCalculationAutomatic End With End Sub 1
عصام مسعد قام بنشر مايو 12, 2016 الكاتب قام بنشر مايو 12, 2016 9 دقائق مضت, عبدالسلام ابوالعوافي said: كود اسرع Sub AAA() Dim i As Integer With Application .Calculation = xlCalculationManual .ScreenUpdating = False .EnableEvents = False End With For i = 1 To 5000 Cells(i, 1) = Null Next With Application .ScreenUpdating = True .EnableEvents = True .Calculation = xlCalculationAutomatic End With End Sub احييك على ذكائك والف الف شكر وربنا يجعله فى ميزان حسناتك - هو ديه المطلوب
ياسر خليل أبو البراء قام بنشر مايو 12, 2016 قام بنشر مايو 12, 2016 ولكن ما زالت الحلقات التكرارية قائمة أخي الحبيب عبد السلام أعتقد من الأفضل إلغاء الفلترة في النطاق ثم مسح النطاق المطلوب ثم إرجاع النطاق للفلترة بالشرط المسبق .. تقبل تحياتي 2
عبدالسلام ابوالعوافي قام بنشر مايو 13, 2016 قام بنشر مايو 13, 2016 استاذنا ياسر لا اعلم لما تتخوف وتتحاشى الحلقات التكرارية بالرغم انها اساس العمل في الكثير من الدوال مثلا لو عملنا دالة Lookup او Sum او Index فإن الاكسل سيقوم بفحص كل الخلايا في النطاق .. يعني انه سيستخدم الحلقات التكرارية لو قمنا بالفلترة مثلا سيقوم الاكسل بفحص كل الخلايا في النطاق ومقارنتها بالشروط .. يعني ايضا انه يستخدم الحلقات التكرارية المثال السابق يحتوي فقط علي 5000 خلية .. يعني لاشي بالنسبة للحاسب الذي يقوم بمئات الملايين من العمليات في الثانية الواحدة بالرغم من ان الاكسل يعتبر من البرامج البطيئة في معالجة البيانات .. الا اني جرب الكود السابق علي نطاق يساوي عشر اضعاف النطاق السابق .. وكان الزمن المستغرق في حدود الثانية الواحدة فقط .. طبعا يختلف الزمن من جهاز لاخر ارفقت لك المثال لكي تجرب بنفسك اعذرني على الاطالة .. تحياتي ForLoop.rar 2
ياسر خليل أبو البراء قام بنشر مايو 13, 2016 قام بنشر مايو 13, 2016 أخي الحبيب عبد السلام الموضوع أنني عانيت كثيراً في الملفات التي تحتوي على بيانات ضخمة عند استخدام الحلقات التكرارية ..ولكن هذا لا يعني أننا نستغني عنها على الإطلاق أما رأيي يكمن في أنه طالما يمكن تنفيذ الأمر بدون اللجوء إلى الحلقات التكرارية فلا نتردد في ذلك .. حيث سيكون أسرع في التعامل مع البيانات .. يمكنني العمل على الملف المرفق من قبل صاحب الموضوع في محاولة لإجراء مقارنة بسيطة ، ولكن يجب إيضاح بعض النقاط ..كشرط الفلترة على سبيل المثال 4
الردود الموصى بها