گاهی جدولی مانند جدول زیر به شما تحویل میدهند و از شما می خواهند ردیف های خالی (سطر های خالی) را از این جدول حذف کنید
اگر جدول شما ردیف های کمی داشته باشد این کار را می توانید به صورت دستی انجام دهید ولی اگر 10000 ردیف داشته باشید به طور دستی حذف کردن این ردیف ها کار بسیار مشکلی خواهد بود و حتی می تواند ایجاد خطا بکند.
بعد از این آموزش فرا خواهید گرفت چطور جدول بالا را به جدول زیر تبدیل کنید.
پیش از شروع آموزش چند تذکر را یادآوری می کنیم:
1)این یک نمونه کد می باشد و شاید نیاز شما را پاسخگو نباشد.
2)قبل از اعمال این کد بر روی فایل خود، حتما و حتما از فایل خود یک کپی تهیه کنید چرا که بعد از اعمال کلیه کدهای VBA فایل شما قابل بازیابی نمی باشد.
3)این کد ها را بر روی یک فایل کپی اجرا کنید و به هیچ عنوان بر روی فایل اصلی اجرا نکنید.
4)فایل کپی را حتما به صورت Excel macro-enabled workbook ذخیره کنید.
برای استفاده از این کد یک سری پیش فرض هایی را بیان می نماییم:
1)محدوده جدول خود را انتخاب کرده و نام آن را MyRange می گذاریم.مانند تصویر زیر:
2)در سطر های خالی هیچ سلولی پر نمی باشد.(یعنی در سطر های خالی هیچ سلول پری نداریم)مانند تصویر بالا.
اکنون وارد محیط ویرایشگر vba شوید.(Alt+F11)مانند تصویر زیر بر روی Module کلیک کنید.
اکنون کد های زیر را مانند تصویر زیر در Module1 کپی کنید.
Sub DeleteBlankRows()
'Step1: Declare your variables.
Dim MyRange As Range
Dim iCounter As Long
'Step 2: Define the target Range.
Set MyRange = ActiveSheet.UsedRange
'Step 3: Start reverse looping through the range.
For iCounter = MyRange.Rows.Count To 1 Step -1
'Step 4: If entire row is empty then delete it.
If Application.CountA(Rows(iCounter).EntireRow) = 0 Then
Rows(iCounter).Delete
End If
'Step 5: Increment the counter down
Next iCounter
End Sub
اکنون این ماژول را از تب Developer و کلیک بر روی Micro اجرا کنید.نتیجه مانند تصویر زیر خواهد بود.سوال:اگر در ردیف های خالی،سلولی پر باشد آیا این کد ردیف خالی را حذف خواهد کرد؟خیر. آیا راهی وجود دارد که ردیف های خالی را با وجود سلول های پر حذف کرد؟بله.در آموزش های بعدی تقدیم شما خواهد شد.
بسیار بسیار ممنونم
مشکل من رو حل کرد
واقعا مرسی
سلام / ممنون ولی اصل کاری رو نگفتید ستونها و ردیف های بی نهایتی که اطراف جدول مون تو اکسل هستند رو چطور از بین ببریم اتخاب تک تک شون که امکان نداره چون اکسل بی نهایت ردیف و ستون داره