برای تسهیل ورود داده ها در یک جدول در اکسل، می توانید از فرم های خاص استفاده کنید که به سرعت فرایند پرکردن محدوده جدول با اطلاعات را کمک می کند. در اکسل ابزار ساخته شده است که اجازه می دهد تا با یک روش مشابه اجرا شود. کاربر همچنین می تواند نسخه شخصی خود را از فرم ایجاد کند که با استفاده از یک ماکرو برای این، حداکثر با نیازهایش سازگار خواهد بود. بیایید به استفاده های مختلف برای این ابزار پر کردن مفید در اکسل نگاه کنید.
محتوا
فرم پر کردن یک شی با فیلدهای است که نام آنها با نام ستون ستون جدول پر شده است. در این زمینه شما باید اطلاعات را وارد کنید و آنها بلافاصله به خط جدید در محدوده جدول اضافه می شوند. یک فرم می تواند به عنوان یک ابزار جداگانه ساخته شده در اکسل عمل کند یا می تواند به صورت محدوده آن به طور مستقیم بر روی یک صفحه قرار گیرد، در صورتی که توسط کاربر ایجاد شده باشد.
حالا اجازه دهید به نحوه استفاده از این دو نوع ابزار نگاه کنیم.
اول از همه، بیایید یاد بگیریم که چگونه از فرم ورود اطلاعات ورودی اکسل استفاده کنیم.
در قسمت "انتخاب فرمان از" تنظیم مقدار "دستورات روی نوار نیستند . " بعد از لیست دستورات که در ترتیب حروف الفبا مرتب شده اند، موقعیت "فرم ..." را پیدا می کنیم . سپس بر روی دکمه "افزودن" کلیک کنید.
علاوه بر این، با استفاده از ماکرو و تعدادی از ابزارهای دیگر، امکان ایجاد فرم سفارشی خود را برای پر کردن فضاهای جدول وجود دارد. این خواهد شد به طور مستقیم در ورقه ایجاد شده، و نشان دهنده محدوده آن است. با استفاده از این ابزار، کاربر می تواند ویژگی های مورد نظر خود را درک کند. از نظر قابلیت، تقریبا به هیچ وجه به آنالوگ ساخته شده در Excel نخواهد رسید، و در برخی موارد شاید از آن فراتر برود. تنها نکته این است که برای هر آرایه جدول، شما باید یک فرم جداگانه ایجاد کنید و از قالب استاندارد با استفاده از نسخه استاندارد استفاده نکنید.
گزینه دیگری برای غیرفعال کردن فیلتر وجود دارد. در این مورد، حتی نباید به زبانه دیگری تغییر دهید، در حالی که باقی مانده در برگه اصلی . پس از انتخاب سلول فضای جداول روی نوار در جعبه تنظیمات "ویرایش"، روی نماد "مرتب سازی و فیلتر" کلیک کنید. در لیستی که ظاهر می شود، موقعیت Filter را انتخاب کنید.
ستون دوم شیء ورود داده ها در حال حاضر خالی است. به طور مستقیم، بعدا، مقادیر وارد می شوند تا ردیف های محدوده جدول اصلی را پر کنید.
در قسمت «نام» ، می توانید نام را با یک نام راحت تر جایگزین کنید. اما لازم نیست مجاز به استفاده از فضاها، سیریلی و هر نشانه دیگری است. بر خلاف پارامتر قبلی که نام ورق برای برنامه را مشخص می کند، این پارامتر نام را به ورق مشخص می کند که برای کاربر در نوار میانبر قابل مشاهده است.
همانطور که می بینید، پس از آن، نام برگه 1 در منطقه "پروژه" به طور خودکار به همان که در تنظیمات فقط تنظیم شده تغییر خواهد کرد.
Sub DataEntryForm()
Dim nextRow As Long
nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).Row
With Producty
If .Range("A2").Value = "" And .Range("B2").Value = "" Then
nextRow = nextRow - 1
End If
Producty.Range("Name").Copy
.Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues
.Cells(nextRow, 3).Value = Producty.Range("Volum").Value
.Cells(nextRow, 4).Value = Producty.Range("Price").Value
.Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value
.Range("A2").Formula = "=IF(ISBLANK(B2), """", COUNTA($B$2:B2))"
If nextRow > 2 Then
Range("A2").Select
Selection.AutoFill Destination:=Range("A2:A" & nextRow)
Range("A2:A" & nextRow).Select
End If
.Range("Diapason").ClearContents
End With
End Sub
اما این کد جهانی نیست، یعنی فقط برای پرونده ما باقی می ماند. اگر می خواهید آن را با نیازهای خود سازگار کنید، باید آن را تغییر دهید. به طوری که شما می توانید آن را خودتان انجام دهید، بیایید نگاهی به کدام این کد داشته باشیم، چه باید در آن جایگزین شود و چه چیزی نباید تغییر کند.
بنابراین، خط اول:
Sub DataEntryForm()
"DataEntryForm" نام خود ماکرو است. شما می توانید آن را به عنوان آن را ترک، و یا شما می توانید آن را با هر جای دیگر که مطابق با قوانین عمومی برای ایجاد نام های کلان (بدون فضاهای، استفاده از تنها حروف الفبای لاتین، و غیره) جایگزین. تغییر نام هر چیزی را تحت تاثیر قرار نخواهد داد.
در همه جا، جایی که کلمه "Producty" در کد نمایش داده می شود ، شما باید آن را با نامی که قبل از آن در قسمت "Properties" در ویرایشگر ماکرو در قسمت "(Name)" قرار داده اید جایگزین کنید. به طور طبیعی، این باید انجام شود تنها اگر شما به نام ورق متفاوت است.
حالا خط زیر را در نظر بگیرید:
nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).Row
شماره "2" در این خط به معنی ستون دوم ورق است. این است که در این ستون ستون "نام محصول" است . با توجه به آن تعدادی ردیف را شمارش می کنیم. بنابراین، اگر در مورد شما همان ستون دارای دستورالعمل دیگری از حساب باشد، باید شماره مربوطه را وارد کنید. مقدار "End (xlUp) .Offset (1، 0) .Row" در هر صورت، بدون تغییر باقی بماند.
بعد خط را در نظر بگیرید
If .Range("A2").Value = "" And .Range("B2").Value = "" Then
"A2" مختصات سلول اول است که شماره ردیف آن نمایش داده می شود. "B2" مختصات اولین سلول است که برای خروجی داده ( "نام محصول" ) استفاده می شود. اگر آنها متفاوت باشند، اطلاعات خود را به جای این مختصات وارد کنید.
به خط بروید
Producty.Range("Name").Copy
در آن، پارامتر "نام" به معنای نامی است که ما به نام "نام محصول" در فرم ورودی اختصاص داده ایم.
در ردیفها
.Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues
.Cells(nextRow, 3).Value = Producty.Range("Volum").Value
.Cells(nextRow, 4).Value = Producty.Range("Price").Value
.Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value
اسامی "Volum" و "Price" به معنی نامهایی هستند که ما به فیلدهای "Quantity" و "Price" در همان فرم ورودی اختصاص داده ایم.
به همان ترتیب که ما در بالا اشاره کردیم، اعداد "2" ، "3" ، "4" ، "5" به معنای تعداد ستون ها در صفحه اکسل است که مربوط به ستون ها "نام محصول" ، "مقدار" ، "قیمت" و "مبلغ" " بنابراین، اگر در مورد شما جدول تغییر کرده است، پس شما باید شماره ستون مربوطه را مشخص کنید. اگر ستون های بیشتری وجود داشته باشد، سپس به صورت مشابه، شما باید خطوط آن را به کد اضافه کنید، اگر کمتر باشد، سپس موارد اضافی را حذف کنید.
خط مقدار کالاها را به قیمت آنها کم می کند:
.Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value
نتیجه، همانطور که از نحو رکورد دیده می شود، در ستون پنجم ورق اکسل نمایش داده می شود.
در این عبارت، خطوط به طور خودکار شماره می شوند:
If nextRow > 2 Then
Range("A2").Select
Selection.AutoFill Destination:=Range("A2:A" & nextRow)
Range("A2:A" & nextRow).Select
End If
تمام مقادیر "A2" به معنای آدرس سلول اول که در آن شماره گذاری انجام می شود، و مختصات " A" - آدرس کل ستون با شماره. بررسی کنید که کدام شماره در جدول شما ظاهر شود و در صورت لزوم کد مختصات را تغییر دهد.
خط بعد از اینکه اطلاعات از آن به جدول منتقل شد، محدوده فرم ورود اطلاعات را پاک می کند:
.Range("Diapason").ClearContents
دشوار است حدس بزنید که ( "Diapason" ) به معنای نام دامنه ای است که ما قبلا به فیلدها برای ورود داده شده اختصاص داده ایم. اگر نام دیگری به آنها دادید، آن را باید در این خط قرار دهید.
بقیه کد جهانی است و در همه موارد بدون تغییرات ساخته خواهد شد.
پس از اینکه کد ماکرو را در پنجره ویرایشگر نوشته اید، باید بر روی Save به عنوان یک نماد دیسکت در قسمت چپ پنجره کلیک کنید. سپس می توانید آن را با کلیک کردن روی دکمه استاندارد برای بستن پنجره ها در گوشه سمت راست بالا ببندید.
به عنوان مثال، در مورد ما، منطقی است نام او را "اضافه کردن" نام ببریم. تغییر نام و با کلیک بر روی هر سلول آزاد از ورق کلیک کنید.
همچنین ببینید:
نحوه ایجاد یک ماکرو در اکسل
نحوه ایجاد یک دکمه در اکسل
در اکسل، دو روش برای استفاده از فرم پر کردن داده وجود دارد: ساخته شده و کاربر. استفاده از نسخه داخلی نیاز به حداقل تلاش از کاربر است. این می تواند همیشه با اضافه کردن آیکون متناظر به نوار ابزار دسترسی سریع راه اندازی شود. شما باید یک فرم سفارشی خودتان را ایجاد کنید، اما اگر در کد VBA به خوبی شناختید، می توانید این ابزار را به عنوان انعطاف پذیر و مناسب برای نیازهای خود در صورت امکان ایجاد کنید.