Excel VBA yordamida formulani oxirgi qatorga avtomatik toʻldirish (5 ta misol)

  • Buni Baham Ko'Ring
Hugh West

Agar siz Microsoft Excel bilan bir muncha vaqt ishlayotgan bo'lsangiz, Avtomatik to'ldirish muhimligini bilasiz. Formulani satr yoki ustun bo'ylab nusxalash uchun biz ushbu usuldan foydalanamiz. Endi biz buni sichqoncha yordamida qo'lda ishlatishimiz mumkin. Ammo, agar sizda ma'lumotlarga ega katta qator bo'lsa, har qanday formulani oxirgi satr yoki ustunga nusxalash qiyin bo'ladi. Formulani oxirgi qator yoki ustunga osonlik bilan avtomatik toʻldirish uchun VBA kodidan foydalanishingiz mumkin.

Ushbu qoʻllanmada VBA kodlari yordamida Excelda formulani oxirgi qatorga avtomatik toʻldirishni oʻrganasiz. Ushbu o'quv qo'llanma tegishli misollar va to'g'ri rasmlar bilan bog'liq bo'ladi. Shunday ekan, biz bilan qoling.

Amaliy kitobni yuklab oling

Formulani oxirgi qatorga avtomatik toʻldirish.xlsm

Avtomatik toʻldirish nima Excel?

Endi, avtomatik to'ldirish Microsoft Excel dasturining o'rnatilgan xususiyati bo'lib, foydalanuvchilarga qolgan satrlar yoki ustunlarni avtomatik ravishda qiymatlar, formatlar yoki formulalar bilan to'ldirish imkonini beradi. Kursorni istalgan katakning pastki o'ng burchagiga olib borganingizda uni aniqlashingiz mumkin. Biz uni Excelning avtomatik toʻldirish ishlovchisi deb ataymiz.

Quyidagi skrinshotni koʻrib chiqing:

Bu yerda siz ikkita raqamni koʻrishingiz mumkin. Qolgan qatorlarni Excelda avtomatik to'ldirish yordamida to'ldiramiz.

Avval B5:B6 katakchalar diapazonini tanlang. Shundan so'ng, siz pastki o'ng burchakda avtomatik to'ldirish dastagini ko'rasiz.

Endi bu avtomatik to'ldirish dastagini pastga torting.

Ko'rib turganingizdek, Excel avtomatik ravishda to'ldirdiqolgan hujayralar. Bu Excelda avtomatik toʻldirishning asosiy qoʻllanilishidir.

Excel VBA bilan avtomatik toʻldirishdan qanday foydalanish

Agar sizda maʼlum diapazonda qator yoki ustunlar soni koʻp boʻlsa, uni pastga torting. oxirgi satr yoki ustunga avtomatik to'ldirish dastagi. Bu juda mashaqqatli jarayon. Yaxshiyamki, siz Excel-dagi VBA kodlari yordamida uni minimallashtirishingiz mumkin. Yacheykalarni qiymatlar, formulalar yoki formatlar bilan avtomatik toʻldirish uchun VBA kodidan foydalanishingiz mumkin.

Umumiy sintaksis:

Diapazon .Avtoto‘ldirish manzili, turi

Bu yerda,

Range (“B5”): Seriyaning qolgan qismini to‘ldirish uchun asosiy naqshga ega katak.

Maqsad: Naqsh qatori bilan to‘ldirmoqchi bo‘lgan katakchalar diapazoni.

XlAutoFillType sifatida yozing: Seriyani to'ldirish turi. Siz tanlashingiz mumkin bo'lgan turli xil avtomatik to'ldirish turlari mavjud.

Batafsil o'qing: Excelda VBA avtomatik to'ldirishdan qanday foydalanish

Excelda avtomatik to'ldirishning 4 turi VBA

Ushbu bo'limda men avtomatik to'ldirishning ba'zi turlarini ko'rib chiqaman. Biz allaqachon xlAutoFillType yordamida istalgan avtomatik to'ldirish turini tanlashimiz mumkinligini ko'rdik. Mana, men sizga bunga misollar keltiraman.

1. xlFillDefault

Biz bu turdagi avtomatik toʻldirishni oldingi misolda koʻrgan edik.

Skrinshotni koʻrib chiqing:

Qolgan katakchalarni avtomatik to'ldirish uchun quyidagi VBA kodini kiriting:

5494

Endi, VBA makrosini ishga tushiring va shundan so'ng siz quyidagini ko'rasiz.quyidagi:

U VBA makrosidan foydalangan holda qolgan hujayralarni avtomatik ravishda to'ldiradi.

2. xlFillCopy

Bir xil qiymatlarni nusxalash uchun avtomatik to'ldirish turida xlFillCopy turidan foydalanishingiz mumkin.

Skrinshotni ko'rib chiqing:

Qolgan hujayralarni avtomatik to'ldirish uchun quyidagi VBA kodini kiriting:

1340

Endi VBA makrosini ishga tushiring va shundan so'ng siz quyidagilarni ko'rasiz:

Excel qolgan katakchalarni bir xil qiymatlar naqshlari bilan to'ldiradi.

3. xlFillMonths

Siz xlFillMonths avtomatik toʻldirish turidan foydalanib ham oylarni toʻldirishingiz mumkin.

Skrinshotni koʻring:

Mana, biz yanvar va fevral oylarini kiritdik.

Qolgan hujayralarni avtomatik toʻldirish uchun quyidagi VBA kodini kiriting:

4046

Endi VBA makrosini ishga tushiring va keyin bunda siz quyidagilarni ko'rasiz:

Excel avtomatik ravishda naqshlarni tushunadi va ular bilan to'ldiradi.

4. xlFillFormats

Shuningdek, VBA avtomatik toʻldirish yordamida formatlarni boshqa kataklarga nusxalashingiz mumkin. Buning uchun siz xlFillFormats avtomatik toʻldirish turidan foydalanishingiz kerak.

Skrinshotni koʻring:

Mana, bizda ikkita katakchani ba'zi ranglar bilan to'ldirdi.

Endi qolgan hujayralarni avtomatik to'ldirish uchun quyidagi VBA kodini kiriting:

7484

Endi VBA makrosini ishga tushiring va shundan so'ng siz quyidagini ko'rasiz quyidagi:

Ko'rib turganingizdek, bizning VBA makrosimiz avtomatik to'ldirishdan foydalanadi.B ustuni qatorlarini samarali toʻldiring.

Batafsil oʻqing: Oylarni Excelda qanday avtomatik toʻldirish kerak

Formulani oxirgi qatorga avtomatik toʻldirishga 5 ta misol Excel VBA

1. Formulani oxirgi foydalanilgan qatorga avtomatik to'ldirish uchun VBA

Shunga o'xshab, VBA yordamida formulani avtomatik to'ldirishingiz mumkin. Agar oldingi bo'limlarni o'qigan bo'lsangiz, buni osongina bajarishingiz mumkin. Muammo siz formulani oxirgi qatorga avtomatik to'ldirishingiz kerak bo'lganda paydo bo'ladi. Avval oxirgi ishlatilgan qatorni aniqlashingiz kerak. Shundan so'ng, VBA kodi ularni avtomatik ravishda to'ldiradi.

Quyidagi ma'lumotlar to'plamini ko'rib chiqing:

Bu erda bizda ba'zi sotuvchilarning savdo ma'lumotlar to'plami mavjud. . Bizning maqsadimiz yanvar va fevral oylaridagi sotuvlarni Jami ustunga qo'shishdir. Shundan so'ng biz Excelda oxirgi ishlatilgan qatorga VBA yordamida avtomatik to'ldirish usulidan foydalanamiz.

Buni bajarish uchun quyidagi kodni kiriting:

8840

last_row = Cells(Rows.Count, 2).End(xlUp).Row: U B ustunidan oxirgi foydalanilgan qatorni qaytaradi. Maʼlumotlar toʻplamidan istalgan ustunni tanlashingiz mumkin.

Range(“E5”).Formula = “=SUM(C5:D5)”: Biz C5 va D5 uyalari savdosini qo'shamiz.

Range(“E5”).Autofill Destination:=Diapazon(“E5:E” &oxirgi_qator): Natijani olgandan so‘ng biz avtomatik to‘ldirishdan foydalanamiz. U E5 uyasidan avval biz olgan oxirgi foydalanilgan qatorgacha avtomatik to'ldirishni boshlaydi.

Endi, VBA makrosini ishga tushiring. Shundan so'ng siz quyidagi chiqishni ko'rasiz:

Asko'rishingiz mumkin, bizning VBA kodimiz birinchi natijani qo'shadi va formulani Excelning oxirgi qatoriga avtomatik to'ldiradi.

Batafsil o'qing: Qanday qilib ma'lumotlar bilan oxirgi qatorni to'ldirish kerak Excel

2. ActiveCell'dan oxirgi qatorga VBA avtomatik to'ldirish

Endi, agar siz avtomatik to'ldirish usulida ma'lum diapazondan foydalanishni xohlamasangiz, faol hujayra qiymatlaridan foydalanishingiz mumkin , formulalar yoki formatlar. Yacheyka ustiga bosganingizda va qolgan qatorlarni faol katak formulasi bilan avtomatik to‘ldirishni istasangiz, ushbu usuldan foydalaning.

Bu avvalgi misolga o‘xshaydi. Biz avvalgi maʼlumotlar toʻplamidan foydalanmoqdamiz:

Endi biz yanvar va fevral oylaridagi sotuvlarni qoʻshamiz va Excel VBA yordamida formulani oxirgi qatorga avtomatik toʻldiramiz.

Endi quyidagi kodni kiriting:

7432

last_row = Cells(Rows.Count, 2).End(xlUp).Row: U oxirgi ishlatilgan kodni qaytaradi. B ustunidan qator. Maʼlumotlar toʻplamidan istalgan ustunni tanlashingiz mumkin.

ActiveCell.Formula = “=SUM(C5:D5)”: Biz Hujayra sotuvini qoʻshamiz. C5 va D5 tanlangan katakchangizda.

ActiveCell.AutoFill Destination:=Range(ActiveCell.Address & “:E” & oxirgi_qator): Natijani olganimizdan so'ng biz avtomatik to'ldirishdan foydalanamiz. U faol yacheykadan oxirgi foydalanilgan qatorga avtomatik to'ldirishni boshlaydi.

Endi Uya E5 -ni tanlang.

Shundan so'ng, formulani qo'shish va oxirgi qatorga avtomatik to'ldirish uchun VBA makrosini ishga tushiring.

Ko'rib turganingizdek, bizformulani oxirgi qatorga avtomatik toʻldirish uchun VBA makrosidan muvaffaqiyatli foydalandi.

Oʻxshash oʻqishlar

  • Qatorlarni maʼlum bir necha marta takrorlash Excel (4 usul)
  • Excelda avtomatik ravishda qatorlarni raqamlash (8 usul)
  • Excelda ustunni bir xil qiymat bilan qanday to'ldirish kerak (9 ta hiyla) )
  • Excelda avtomatik toʻldirish yorligʻini qoʻllash (7 usul)

3. Excel VBA bilan dinamik diapazondan foydalanib oxirgi qatorga avtomatik toʻldirish

Ilgari biz sizga Excelda oxirgi qatorga avtomatik toʻldirish uchun baʼzi VBA makroslarini koʻrsatgan edik. Endi bu misollarda biz allaqachon dinamik diapazonlardan foydalanganmiz.

Statik diapazonlarni tushunish uchun quyidagi kodni koʻrib chiqing:

3301

Biz Excelga asosan -ga formula kiritishni aytdik. E5 katakchani va uni E5 katakchadan yacheykadan E11 ga avtomatik to'ldirish. Bu erda biz diapazonni aniqladik. Agar ko'proq qator qo'shsangiz nima bo'ladi? Bunday holda, bizning VBA qo'shimcha qatorlarni avtomatik to'ldirmaydi, chunki biz unga ma'lum bir diapazonni avtomatik to'ldirishni allaqachon aytgan edik.

Ushbu muammoni hal qilish uchun men dinamik diapazonni qabul qiladigan yechim topdim:

6995

Ko'rib turganingizdek, biz birinchi navbatda ushbu kod qatori bo'yicha oxirgi qatorni topamiz:

8401

Keyin biz dinamik diapazondan foydalanib oxirgi qatorni avtomatik to'ldiramiz:

3022

Yo'q Ma'lumotlar to'plamiga qancha qator qo'shsangiz ham, ushbu VBA kodi ularni aniqlashda muvaffaqiyatli bo'ladi. Va u ularni formula bilan avtomatik to'ldiradi.

Dinamik diapazon asosan diapazonni kiritish shart emasligini bildiradi.qo'lda. Excel vaqti-vaqti bilan uni yangilab turadi.

Batafsil o'qing: Excel VBA: diapazon sinfini avtomatik to'ldirish usuli bajarilmadi

4. Oxirgigacha avtomatik to'ldirish Excelda ustun VBA yordamida

Agar siz oxirgi qatorgacha avtomatik toʻldirish uchun oldingi boʻlimlarni oʻqigan boʻlsangiz, oxirgi ustunga osongina avtomatik toʻldirishingiz mumkin. Siz shunchaki oxirgi ustun raqamini topib, uni Excel VBA bilan avtomatik toʻldirishingiz kerak.

Quyidagi maʼlumotlar toʻplamini koʻrib chiqing:

Bu yerda bizda shaxsning 3 oylik byudjetini ifodalovchi maʼlumotlar toʻplami. Endi biz barcha oylarning xarajatlarini qo'shamiz va Excel VBA yordamida formulani oxirgi ustunga avtomatik to'ldiramiz.

Endi quyidagi kodni kiriting:

7827

last_column = Cells(6, Columns.Count).End(xlToLeft).Column: U 6-qatordan oxirgi foydalanilgan ustunni qaytaradi. Maʼlumotlar toʻplamidan boshlash uchun istalgan qatorni tanlashingiz mumkin.

Range(“D9”).Formula = “=SUM(D6:D8)”: Biz uch oy (yanvar, fevral, mart) xarajatlarini qo‘shamiz.

Range(“D9”).Autofill Destination:=Range(“D9”, Cells(9, oxirgi_ustun)): Natijani olgandan so'ng biz avtomatik to'ldirishdan foydalanamiz. Bu erda bizning asosiy qatorimiz 9-qatordir. Bizning barcha ma'lumotlarimiz shu qatorda bo'ladi. U D ustunidan avval oxirgi_ustun tomonidan olingan oxirgi foydalanilgan ustungacha avtomatik to'ldirishni boshlaydi.

Makroni ishga tushirgandan so'ng siz quyidagi natijani ko'rasiz. :

Ko'rib turganingizdek, biz VBA-ni avtomatik to'ldirish uchun muvaffaqiyatli ishlatdik.formulani Excelning oxirgi ustunigacha o'qing.

Batafsil o'qing: Excelda ustunni qanday avtomatik to'ldirish kerak

5. Ketma-ket raqamlarni oxirgi qatorga avtomatik to'ldirish Excelda VBA-dan foydalanish

Shuningdek, VBA-da avtomatik to'ldirish yordamida ketma-ket raqamlarni avtomatik to'ldirishingiz mumkin. Bu erda siz avtomatik to'ldirish turida xlFillSeries dan foydalanishingiz kerak. Excel naqshni tushunadi va ularni u bilan to'ldiradi.

Quyidagi skrinshotni ko'rib chiqing:

Mana, bizda ba'zi nomlar mavjud. Va biz ularga identifikatorni ketma-ket ravishda berishni xohlaymiz. Buning uchun biz VBA avtomatik toʻldirishdan foydalanamiz.

Standart diapazonli ketma-ket raqamlarni avtomatik toʻldirish:

7215

Kodni ishga tushirgandan soʻng siz quyidagi natijani koʻrasiz:

Agar siz dinamik diapazondan foydalanmoqchi bo'lsangiz, quyidagi koddan foydalaning:

8997

oxirgi_qator = Yacheykalar(Qatorlar. Count, 2).End(xlUp).Row: U B ustunidan oxirgi foydalanilgan qatorni qaytaradi.

Range(“C5”).AutoFill Destination:=Range(“C5”). :C” & last_row), Type:=xlFillSeries: U C5 uyasi identifikatorini oladi va C ustunidagi oxirgi ishlatilgan qatorga avtomatik to‘ldirishni amalga oshiradi>xlFillSeries ,

Ikkala holatda ham siz bir xil natijaga erishasiz:

Koʻrib turganingizdek, biz VBA kodidan muvaffaqiyatli foydalandik. Excelda ketma-ket raqamlarni avtomatik toʻldirish.

Batafsil oʻqish: Tartibsizlik raqamlarini toʻldirish uchun Excel formulalari Yashirin qatorlarni oʻtkazib yuborish

💬 Esda tutilishi kerak boʻlgan narsalar

Siz avtomatik toʻldirishni toʻxtatishingiz mumkinAgar xohlamasangiz, turli usullar .

Siz bir vaqtning o'zida bir nechta satr va ustunlarni avtomatik to'ldira olmaysiz. Buni birma-bir bajaring.

Xulosa

Xulosa qilish uchun, umid qilamanki, ushbu qo'llanma sizga VBA kodlari yordamida formulani oxirgi qatorga avtomatik to'ldirish bo'yicha foydali bilimlarni taqdim etdi. Ushbu ko'rsatmalarning barchasini o'rganishingizni va ma'lumotlar to'plamiga qo'llashingizni tavsiya qilamiz. Amaliy ish kitobini yuklab oling va ularni o'zingiz sinab ko'ring. Shuningdek, sharhlar bo'limida o'z fikringizni bildiring. Sizning qimmatli fikr-mulohazalaringiz bizni shunga o'xshash darsliklar yaratishga undaydi.

Excel bilan bog'liq turli muammolar va yechimlar uchun bizning veb-saytimizni Exceldemy.com tekshirishni unutmang.

Yangi usullarni o'rganishda va rivojlanishda davom eting!

Hugh West - bu sohada 10 yildan ortiq tajribaga ega bo'lgan yuqori tajribali Excel treneri va tahlilchisi. Buxgalteriya hisobi va moliya yo‘nalishi bo‘yicha bakalavr va biznes boshqaruvi bo‘yicha magistr darajasiga ega. Xyu o'qitishga ishtiyoqi bor va unga amal qilish va tushunish oson bo'lgan o'ziga xos o'qitish usulini ishlab chiqdi. Uning Excel bo'yicha ekspert bilimlari butun dunyo bo'ylab minglab talabalar va mutaxassislarga o'z malakalarini oshirishga va o'z martabalarida muvaffaqiyat qozonishlariga yordam berdi. Xyu o'z blogi orqali o'z bilimlarini dunyo bilan baham ko'radi, jismoniy shaxslar va korxonalarga o'z salohiyatini to'liq ro'yobga chiqarishga yordam berish uchun bepul Excel darsliklari va onlayn treninglarni taklif qiladi.