خانه / دانلود رایگان اکسل / شناسایی آخرین سطر پُر در VBA EXCEL

شناسایی آخرین سطر پُر در VBA EXCEL

گاهی فرمی را آماده کرده ایم که اطلاعات ورودی را از طریق فرم به شیت اکسل و سلول های آن وارد و ثبت کنیم. برای این کار باید آخرین سطر پُر وارد شده در اکسل را شناسایی و شماره سطر آن را در متغیری ذخیره نمائیم.

 

اولین کاری که انجام می دهیم فرم ورود اطلاعات را ایجاد می کنیم . فرمی که شامل 3 باکس ورودی (TextBox) و همچنین یک دکمه اجرا (Button)  می باشد.

برای شناسایی آخرین سطر پُر ، ابتدا متغیر LastCount را تعریف می کنیم به شکل زیر:

Dim LastCount as integer

 

حال دستور زیر را می نویسیم:

LastCount= Cells(Rows.Count,1).End(xlUP).Row

در این دستور ، در ابتدا به آخرین سطر پُر موجود در اکسل می رویم . دستور Rows.Count این عمل را انجام می دهد . حال با استفاده از دستور Cells(Rows.Count,1) به سلول سطر آخر و ستون اول منتقل می شویم.

و سپس با دستور END(xlUP) یک جهش به سمت بالا خواهیم داشت تا به آخرین سطر پُر برسیم. و با دستور Row ، سطر آن را در داخل متغیر LastCount ذخیره می کنیم.

 

سپس در بخش دستور Cells به جای سطر ثابت ، از دستور LastCount+1 استفاده می کنیم . زیرا LastCount آخرین سطر پُر را در خروجی می دهد و به آن یک عدد اضافه می کنیم تا به سطر بعد برود.

این عملیات را به طور کامل در ویدئو زیر توضیح داده ایم.

 

لطفا نظرات خود را در قسمت نظرات همین صفحه بیان نمایید. منتظر نظرات و پیشنهادات شما هستم. سوالات خود را بیان کنید تا به صورت ویدئویی آموزش آن در سایت قرار گیرد.

 

 

پیشنهاد می کنیم از آموزش زیر نیز دیدن نمایید. با مشاهده آموزش زیر قادر خواهید بود به صورت اصولی و استاندارد شیوه کدنویسی و برنامه نویسی در اکسل را بیاموزید:

 

Basic Programming VBA Excel

 

 

۲ دیدگاه

  1. سلام
    استاد من میخوام آخرین سطر پر را بدست بیارم ولی با مشکل روبرو شدم
    من در شیتم یک تیبل ایجاد کردم که ستون A برابر ردیف است که با =IF([@نام]>0;ROW()-2;””) به سورت خود کار پر میشه (نام در کد بالا هم ستون دوم من است)
    اطلاعات من از ستون دوم تا شیشم ثبت میشن من الان با مشکلی که روبرو شدم اینکه نمیتونم اطلاعاتم رو به در سطر دوم ثبت کنم و مجبورم از سطر سوم شروع کنم
    ممنون میشم اگه در مورد این شکل کمکم کنید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Solve : *
20 + 27 =