Препратка към клетки в Excel VBA (8 примера)

  • Споделя Това
Hugh West

В тази статия ще ви покажа как можете да получите достъп до препратка към клетка в VBA Ще се научите да получавате достъп до една клетка, както и до няколко клетки заедно.

Изтегляне на работна тетрадка за практика

Изтеглете тази книга за упражнения, за да упражните задачата, докато четете тази статия.

VBA Cell Reference.xlsm

8 начина за позоваване на референтна клетка в Excel VBA

Тук имаме набор от данни с Име на книгата , Видове книги, и Цена на някои книги от книжарница, наречена Martin Bookstore.

Наборът от данни се намира в диапазона B4:D13 на работния лист.

Днес нашата цел е да се научим да правим препратки към клетките на този набор от данни с VBA.

Ето 8-те най-добри начина за препращане към референтна клетка с VBA в Excel.

1. Препратка към референтна клетка чрез използване на обекта Range във VBA в Excel

Първо, можете да се обърнете към препратка към клетка, като използвате Обхват обект от VBA .

Можете да се позовавате както на единична клетка, така и на диапазон от клетки с помощта на Обхват обект.

Например, за да получите достъп до едноклетъчните B4 , използвайте реда от кода:

Dim Cell_Reference Като обхват

Задайте Cell_Reference = Range("B4")

Следният код избира клетка B4 .

Ще се избере клетка B4 в активния работен лист.

По подобен начин можете да получите достъп до набор от клетки.

Dim Cell_Reference Като обхват

Задайте Cell_Reference = Range("B4:D13")

Следният код избира обхвата B4:D13 .

Ще бъде избран диапазонът от клетки B4:D13 .

Забележка : Можете да използвате Обхват директно, без да го декларирате предварително, като:

Range("B4:D13").Select

Също така, ако искате да получите достъп до някоя клетка от работен лист, който не е активен, използвайте името на работния лист преди Обхват обект.

Например, за достъп до клетката B4 на Лист2 , използвайте:

Работни листове("Sheet2").Range("B4:D13")

2. Препратка към референтна клетка чрез използване на индексните числа във VBA в Excel

Можете също така да направите препратка към клетка, като използвате номера на индекса. Но при този метод можете да направите препратка само към една клетка.

Например, за да получите достъп до клетката с номер на реда 4 , и номер на колоната 2 ( B4 ), използвайте:

Cells(4, 2))

Следващият код отново избира клетка B4 на активния работен лист.

Ще се избере клетка B4 .

Забележка: За да получите достъп до която и да е клетка от неактивен работен лист, използвайте името на работния лист преди препратката към клетката.

Например:

Работни листове("Sheet2").Cells(4, 2)

[ Същото като при метод 1 ] .

3. Препратка към референтна клетка спрямо друга клетка във VBA в Excel

Можете също така да посочите референция на клетка спрямо друга клетка в VBA . Трябва да използвате Функция за отместване на VBA за това.

За достъп до клетката 1 ред надолу и 2 дясната колона на клетката B4 (D5) , използвайте:

Range("B4").Offset(1, 2)

Следният код избира клетка D5 на активния работен лист.

Ще изберете клетка D5 .

Забележка: За да направите препратка към някоя неактивна клетка от работен лист, използвайте името на работния лист преди препратката към клетката.

Например:

Worksheets("Sheet2").Range("B4").Offset(1, 2)

[ Същото като при метод 1 и 2 ] .

4. Препратка към препратка към клетка чрез използване на обозначението за бърз достъп във VBA в Excel

Налице е съкратен запис за достъп до всяка препратка към клетка в VBA По този начин можете да се позовавате както на единична клетка, така и на диапазон от клетки.

За достъп до клетка B4 , използвайте:

[B4]

Или за достъп до обхвата B4:D13 , използвайте:

[B4:D13]

Следният код избира обхвата B4:D13 .

Ще изберете диапазона B4:D13 .

Забележка: За да направите препратка към някоя клетка от неактивен работен лист, използвайте името на работния лист преди препратката към клетката.

Например:

Работни листове("Sheet2").[B4:D13]

[ Същото като при методи 1, 2 и 3 ] .

Подобни четива:

  • Как да заключите клетка във формула на Excel (2 начина)
  • Пряк път за абсолютна референция на клетките в Excel (4 полезни примера)
  • Как да запазите фиксирана клетка във формулата на Excel (4 лесни начина)
  • Използване на препратки към клетките във формулата на Excel (3 начина)

5. Препратка към именуван диапазон във VBA в Excel

Можете да се обърнете към Именуван обхват с VBA в Excel.

Да назовем диапазона B4:D13 на активния работен лист като Book_List.

Сега можем да се обърнем към този Именуван диапазон по реда на кода:

Обхват("Book_List")

Следният код избира обхвата Book_List ( B4:D13 ).

Ще изберете диапазона Book_List .

Забележка: За да получите достъп до която и да е клетка от неактивен работен лист, използвайте името на работния лист преди препратката към клетката.

Например:

Работни листове("Sheet2").Range("Book_List")

[ Същото като при методи 1, 2, 3 и 4 ] .

6. Препратка към множество диапазони във VBA в Excel

Можете също така да се позовавате на множество диапазони в VBA в Excel.

За достъп до обхвата B4:D5 , B7:D8 , и B10:D11 , използвайте:

Range("B4:D5,B7:D8,B10:D11")

Това ще избере няколкото диапазона заедно.

Също така можете да използвате Union собственост на VBA за съвместен достъп до няколко диапазона.

Съюз (обхват("B4:D5"), обхват("B7:D8"), обхват("B10:D11"))

Или можете да получите достъп до няколко Именувани диапазони заедно.

Обхват("Named_Range_1,Named_Range_2")

Също така поставете името на работния лист пред неактивните работни листове.

Например:

Worksheets("Sheet2").Range("B4:D5,B7:D8,B10:D11")

[ Същото като при методи 1, 2, 3, 4 и 5 ]

7. Препратка към Редове и колони във VBA в Excel

Можете също така да се позовавате на един или повече редове или колони във VBA в Excel.

За достъп до 4. ред, употреба:

Редове (4)

Ще изберете целия 4. ред.

По същия начин, Колони(4) ще получите достъп до целия 4. колона.

А за да получите достъп до няколко реда или колони заедно, използвайте Union собственост на VBA .

За достъп до редовете 4, 6, 8, и 10 заедно, използвайте:

Обединение(Редове(4), Редове(6), Редове(8), Редове(10))

Ще бъдат избрани целите редове 4, 6, 8 , и 10 .

Забележка: Добавете името на работния лист отпред, в случай че той е неактивен.

Например:

Работни листове("Sheet2").Rows (4)

[ Същото като при метод 1, 2, 3, 4, 5 и 6 ]

8. Препратка към целия работен лист във VBA в Excel

Накрая ще ви покажа как да се обърнете към целия работен лист. За да получите достъп до целия работен лист в VBA , използвайте:

Клетки

Или за препратка към неактивен работен лист (Например, Лист2 ), използвайте:

Worksheet("Sheet2").Cells

Това ще избере целия работен лист Лист2 .

Свързано съдържание: Относително и абсолютно адресиране на клетките в електронната таблица

Нещата, които трябва да запомните

  • За да получите достъп до една или повече клетки от активен работен лист, можете да споменете името на работния лист отпред или не, но за да получите достъп до клетки от неактивен работен лист, трябва да споменете името на работния лист пред препратката към клетката.
  • Дори можете да получите достъп до клетките на неактивна работна книга в VBA , В този случай трябва да посочите както името на работната книга, така и име на работния лист пред препратката към клетката.

Заключение

С помощта на тези методи можете да се обърнете към всяка референтна клетка с VBA в Excel. Имате ли някакви въпроси? Не се колебайте да ни попитате.

Хю Уест е опитен обучител и анализатор на Excel с над 10 години опит в индустрията. Има бакалавърска степен по счетоводство и финанси и магистърска степен по бизнес администрация. Хю има страст към преподаването и е разработил уникален подход на преподаване, който е лесен за следване и разбиране. Неговите експертни познания по Excel са помогнали на хиляди студенти и професионалисти по целия свят да подобрят уменията си и да постигнат отлични резултати в кариерата си. Чрез своя блог Хю споделя знанията си със света, като предлага безплатни уроци за Excel и онлайн обучение, за да помогне на хората и фирмите да достигнат пълния си потенциал.