Mundarija
Ushbu qo'llanmada siz Excelda tanlangan katakning satri va ustunini dinamik ravishda ajratib ko'rsatishning 3 xil usulini o'rganasiz.
Uzoq vaqt davomida katta hajmdagi ishchi varaqni ko'rsangiz, siz natijada kursoringiz qayerdaligini va qaysi ma'lumotlarni ko'rayotganingizni yo'qotishi mumkin. Istalgan vaqtda qayerda ekanligingizni bilish uchun Excel-dan faol satr va ustunni avtomatik ravishda ajratib ko'rsatishni o'rnating! Tabiiyki, ta'kidlash dinamik bo'lishi va har safar boshqa katakchani tanlaganingizda o'zgarishi kerak. Aslida, biz erishmoqchi bo'lgan narsa:
VBA bilan tanlangan katakning satri va ustunini avtomatik ajratib ko'rsatish
Bu misol VBA bilan qanday qilib faol ustun va qatorni dasturiy ravishda ajratib ko'rsatishingiz mumkinligini ko'rsatadi. Buning uchun biz Worksheet obyektining SelectionChange hodisasidan foydalanamiz.
Birinchi navbatda,
Kodni moslashtirish
Agar siz kodni ehtiyojlaringiz uchun moslashtirmoqchi bo'lsangiz, ushbu kichik maslahatlar foydali bo'lishi mumkin:
- Bizning namuna kodimiz yuqoridagi gif-da ko'rsatilgan ikki xil rangdan foydalanadi - rang indeksi satr uchun 38 va ustun uchun 24. ta'kidlash rangini o'zgartirish uchun ularni o'zingiz tanlagan istalgan ColorIndex kodlari bilan almashtiring.
- Qatr va ustunni xuddi shunday rangga olish uchun xuddi shunday foydalaning ikkalasi uchun rang indeks raqami.
- Faqat faol qatorni ajratib ko'rsatish uchun ushbu qatorni olib tashlang yoki izoh bering: .EntireColumn.Interior.ColorIndex = 24
- Faqat faol ustunni ajratib ko'rsatish uchun ushbu qatorni olib tashlang yoki sharhlang: .EntireRow.Interior.ColorIndex = 38
Kodni qanday qo'shish kerak ishchi varaqingizga
Kodning ma'lum bir ish varag'i fonida jimgina bajarilishi uchun uni oddiy modulga emas, balki ushbu ish varag'iga tegishli kod oynasiga kiritishingiz kerak. Buni amalga oshirish uchun quyidagi amallarni bajaring:
- Ish kitobingizda VBA muharririga o'tish uchun Alt + F11 tugmalarini bosing.
- Chapdagi Project Explorer-da siz' Barcha ochiq ish kitoblari va ularning ish varaqlari ro'yxatini ko'rasiz. Agar uni ko'rmasangiz, Project Explorer oynasini ko'rish uchun Ctrl + R yorliqlaridan foydalaning.
- Maqsadli ish kitobini toping. Microsoft Excel-daObjects jildida, ta'kidlashni qo'llamoqchi bo'lgan varaqni ikki marta bosing. Bu misolda bu Vaqt 1 .
- Oʻng tarafdagi Kod oynasida yuqoridagi kodni joylashtiring.
- Faylingizni Makro-yoqilgan ishchi kitobi sifatida saqlang. (.xlsm).
Afzalliklar : hamma narsa backendda amalga oshiriladi; foydalanuvchi tomonidan hech qanday sozlash/moslashtirish kerak emas; barcha Excel versiyalarida ishlaydi.
Kamchiliklari : ushbu texnikani ma'lum sharoitlarda qo'llash mumkin bo'lmagan ikkita muhim kamchilik mavjud:
- Kod fonni tozalaydi ishchi varaqdagi barcha kataklarning ranglari . Agar sizda rangli hujayralar bo'lsa, bu yechimdan foydalanmang, chunki sizning shaxsiy formatlash yo'qoladi.
- Ushbu kodni bajarish bloklanadi bekor qilish funksiyasi varaqdagi va Ctrl + Z tugmalarini bosib xato amalni bekor qila olmaysiz.
VBAsiz faol satr va ustunni ajratib ko'rsatish
Tanlangan qatorni ajratib ko'rsatish va /yoki VBAsiz ustun Excelning shartli formatlashidir. Uni sozlash uchun quyidagi amallarni bajaring:
- Ajratib qoʻyish kerak boʻlgan maʼlumotlar toʻplamini tanlang.
- Uy yorligʻida, Uslublar guruhi, Yangi qoida -ni bosing.
- Yangi Formatlash qoidasi muloqot oynasida Qaysi katakchalarni aniqlash uchun formuladan foydalaning. format .
- Format qiymatlari bu formuladarost maydoniga quyidagi formulalardan birini kiriting:
faol qator -ni ajratib ko'rsatish uchun:
=CELL("row")=ROW()
faol ustunni ajratib ko'rsatish uchun :
=CELL("col")=COLUMN()
faol qator va ustunni ajratib ko'rsatish uchun:
=OR(CELL("row")=ROW(), CELL("col")= COLUMN())
Barcha formulalar CELL funktsiyasidan foydalanadi. tanlangan katakning satr/ustun raqamini qaytaring.
- Format tugmasini bosing, Toʻldirish yorligʻiga oʻting va oʻzingizga yoqqan rangni tanlang.
- Yopish uchun OK tugmasini ikki marta bosing. ikkala dialog oynasi ham.
Agar sizga batafsil koʻrsatmalar kerak boʻlsa, formulaga asoslangan shartli formatlash qoidasini qanday yaratish boʻlimini koʻring.
Ushbu misol uchun biz OR ni tanladik. ustun va qatorni bir xil rangda soya qilish uchun formula. Bu kamroq mehnat talab qiladi va aksariyat hollarda mos keladi.
Afsuski, bu yechim VBA-dagidek yaxshi emas, chunki u varaqni qo'lda qayta hisoblashni talab qiladi (F9 tugmasini bosish orqali). Odatiy bo'lib, Excel ish varag'ini faqat yangi ma'lumotlarni kiritgandan yoki mavjudni tahrir qilgandan so'ng qayta hisoblaydi, lekin tanlov o'zgarganda emas. Shunday qilib, siz boshqa hujayrani tanlaysiz - hech narsa bo'lmaydi. F9 tugmasini bosing - varaq yangilanadi, formula qayta hisoblab chiqiladi va ajratib ko'rsatish yangilanadi.
Har safar SelectionChange hodisasi sodir bo'lganda ishchi varaq avtomatik ravishda qayta hisoblanishi uchun. sodir bo'lsa, ushbu oddiy VBA kodini maqolada tushuntirilganidek maqsadli varaqning kod moduliga joylashtirishingiz mumkinoldingi misol:
Private Sub Worksheet_SelectionChange( ByVal Target As Range) Target.Calculate End SubKod tanlangan diapazonni/hujayrani qayta hisoblashga majbur qiladi, bu esa o'z navbatida CELL funksiyasini yangilashga va shartli formatlashni aks ettirishga majbur qiladi. o'zgartirish.
Afzalliklar : oldingi usuldan farqli o'laroq, bu siz qo'lda qo'llagan mavjud formatlashingizga ta'sir qilmaydi.
Kamchiliklari : mumkin Excel ish faoliyatini yomonlashtiradi.
- Shartli formatlash ishlashi uchun Excelni har bir tanlov oʻzgarishida formulani qayta hisoblashga majbur qilishingiz kerak (F9 tugmasi bilan qoʻlda yoki VBA bilan avtomatik ravishda). Majburiy qayta hisob-kitoblar Excel ishini sekinlashtirishi mumkin. Bizning kodimiz butun varaqni emas, balki tanlovni qayta hisoblaganligi sababli, salbiy ta'sir faqat haqiqatan ham katta va murakkab ish kitoblarida seziladi.
- CELL funksiyasi Excel 2007 va undan yuqori versiyalarida mavjud bo'lgani uchun, usul yutadi' t oldingi versiyalarda ishlamaydi.
Shartli formatlash va VBA-dan foydalangan holda tanlangan satr va ustunni ajratib ko'rsatish
Agar oldingi usul ish kitobingizni sezilarli darajada sekinlashtirsa, vazifaga boshqacha yondashishingiz mumkin - o'rniga Har bir foydalanuvchi harakatida ishchi varaqni qayta hisoblash uchun VBA yordamida faol satr/ustun raqamini oling va shartli formatlash formulalari yordamida ushbu raqamni ROW() yoki COLUMN() funksiyasiga taqdim eting.
To. buni amalga oshirish,quyidagi amallarni bajarishingiz kerak:
- Ish kitobingizga yangi bo'sh varaq qo'shing va uni Yordamchi varaq deb nomlang. Ushbu varaqning yagona maqsadi tanlangan katakni o'z ichiga olgan satr va ustunni ifodalovchi ikkita raqamni saqlashdir, shuning uchun siz varaqni keyingi nuqtada xavfsiz yashirishingiz mumkin.
- Quyidagi VBA kodini ishchi varaqning kod oynasiga kiriting. ta'kidlashni amalga oshirmoqchi bo'lgan joyda. Batafsil ko'rsatmalar uchun bizning birinchi misolimizga qarang. Private Sub Worksheet_SelectionChange( ByVal Target As Range) Application.ScreenUpdating = False Worksheets( "Yordamchi varaq" ).Cells(2, 1) = Target.Row Worksheets( "Helper Sheet" ).Cells(2, 2) = Target.Column Application.ScreenUpdating = True End Sub
Yuqoridagi kod faol satr va ustunning koordinatalarini "Yordamchi varaq" deb nomlangan varaqga joylashtiradi. Agar siz 1-bosqichda varaqni boshqacha nomlagan bo'lsangiz, koddagi ishchi varaq nomini mos ravishda o'zgartiring. Qator raqami A2 ga, ustun raqami esa B2 ga yoziladi.
- Maqsadli ish varaqingizda butun ma'lumotlar to'plamini tanlang va quyidagi formulalar bilan shartli formatlash qoidasini yarating. Bosqichma-bosqich ko'rsatma yuqoridagi misolda keltirilgan.
Endi esa uchta asosiy foydalanish holatlarini batafsil ko'rib chiqamiz.
Faol qatorni qanday ajratib ko'rsatish
Kursor qo'yilgan qatorni ajratib ko'rsatish uchun bu bilan shartli formatlash qoidasini o'rnating.formula:
=ROW()='Helper Sheet'!$A$2
Natijada foydalanuvchi qaysi qator tanlanganligini aniq ko'rishi mumkin:
Faol ustunni qanday ajratib ko'rsatish kerak
Tanlangan ustunni ajratib ko'rsatish uchun ustun raqamini COLUMN funksiyasiga quyidagi formula yordamida kiriting:
=COLUMN()='Helper Sheet'!$B$2
Endi, ajratilgan ustun sizga toʻliq diqqatni qaratgan holda vertikal maʼlumotlarni qulay va qiyinchiliksiz oʻqish imkonini beradi.
Faol satr va ustunni qanday ajratib koʻrsatish mumkin
Tanlangan satr va ustun avtomatik ravishda bir xil rangda soyalanishi uchun ROW() va COLUMN() funksiyalarini bitta formulada birlashtiring:
=OR(ROW()='Helper Sheet'!$A$2, COLUMN()='Helper Sheet'!$B$2)
Tegishli ma'lumotlar darhol diqqat markazida bo'ladi, shuning uchun siz ularni noto'g'ri o'qishdan qochishingiz mumkin.
Afzalliklar : optimallashtirilgan ishlash; barcha Excel versiyalarida ishlaydi
Kamchiliklari : eng uzun o'rnatish
Mana shunday Excelda tanlangan katakning ustuni va qatorini ajratib ko'rsatish mumkin. O'qiganingiz uchun rahmat va sizni keyingi hafta blogimizda ko'rishni orziqib kutaman!
Yuklab olish uchun mashq kitobi
Faol satr va ustunni ajratib ko'rsatish (.xlsm fayli)