Range.Offset - Новый курс VBA (6)

preview_player
Показать описание
Ссылка на скачивание файла для упражнения:

Привет! В нашем курсе мы уже наработали самую важную основу знаний работы в VBA. Теперь мы с тобой начинаем изучать важные команды в VBA, которые зачастую приходится использовать для выполнения определенных поставленных задач. Подобной тематикой этого видео является свойство Offset объекта Range.

Свойство Offset служит для «смещения» выбора определенной ячейки, или нескольких ячеек. В этом видео мы узнаем, как применять свойство Offset в своем коде. Как всегда в конце видео тебя ожидает практическое упражнения для закрепления новых знаний.

Приятного просмотра! 😊
Рекомендации по теме
Комментарии
Автор

Билял, спасибо! Offset использую часто в своих программках, это удобно и в циклах, и в функциях даже. Пояснение материала достойное, как и всегда!!! Так держать!

Евгений-.
Автор

Билял, спасибо. Замечательная подача материала!

ihorihor
Автор

Добрый день. Когда указываешь путь на объект с русским названием, отображаются. Одни вопросы???? Кирилицу vba не понимает. Что делать?

ДмитрийФисун
Автор

Спасибо, отличные уроки! С удовольствием все смотрю.
Но есть нюанс. Использование кириллицы в названии файла для упражнения - зло. А учитывая то, что я работаю на маке - это прямо таки зло в квадрате. Вместо названий цветочки да иероглифы. О истинном тексте узнала из видео.

janablackwings
Автор

Спасибо, Билял! Отличный курс, с удовольствием его смотрю и выполняю упражнения! Есть вопрос по данному уроку. Я задал смещения по строкам и столбцам переменными Integer. А дальше я создал переменную типа String и попытался ей присвоить значение текста, который написан у тебя в коде после Debug.Print - ведь по сути эта строчка не меняется, а меняются только переменные смещения. Но почему-то такой вариант у меня не сработал. Каждый раз дебаг выводит одно и то же значение. Код выглядит следующим образом:

Dim rgStartCell As Range
Set rgStartCell =

Dim intRwOff As Integer
Dim intClOff As Integer

Dim strPhrase As String
strPhrase = rgStartCell.Offset(intRwOff, intClOff).Address & " - " & rgStartCell.Offset(intRwOff, intClOff)

intRwOff = -1
intClOff = -2
Debug.Print strPhrase

intRwOff = 9
intClOff = -2
Debug.Print strPhrase

mistuddy
Автор

Приветствую! чем моё решение хуже предложенного автором? какую функцию здесь играет Value?

Sub test()
Dim rgTestcell As Range
Set rgTestcell =
Debug.Print rgTestcell.Offset(-1, -2).Address & "-" & rgTestcell.Offset(-1, -2)
Debug.Print rgTestcell.Offset(9, -2).Address & "-" & rgTestcell.Offset(9, -2)
Debug.Print rgTestcell.Offset(-1, 6).Address & "-" & rgTestcell.Offset(-1, 6)
Debug.Print rgTestcell.Offset(9, 6).Address & "-" & rgTestcell.Offset(9, 6)
End Sub

Решение сработало точно также, результата я добился)

патриот-жж