Какво дефинира Range("A1")?

Microsoft Excel Електронни таблици Microsoft 365 Excel VBA Програмиране VBA за Excel

Какво е Range("A1")? Дори когато не присъства в инструкцията, макроса пак работи коректно?

Мисля, че сама намерих отговора. При записването с macro recorder в релативен режим, в инструкцията във VBA активната клетка се дефинира с "А1", независимо реално коя клетка е в екселския файл. Дали правилно съм се ориентирала?

Здравейте, Надежда. Точно така. Macro Recorder записва много "ненужни" инструкции, независимо от режима на запис - абсолютен или релативен. Както сама забелязахте, в релативен режим за отместването, например, винаги добавя Range("A1"). След като се запише макрос е добре да се редактира, да се опрости кода. Но преди да изтриете ненужната инструкция, сложете коментар и тествайте. ако макроса се изпълнява без грешка, смело може да изтриете инструкцията.

Благодаря Ви, г-жо Вълкова!


Вашият отговор

Научи компютърните програми онлайн от топ експертите на България
Регистрацията в АУЛА ви дава:
  • 20 безплатни урока
  • Трикове и тънкости за софтуера
  • Отговори на вашите въпроси
  • Регистрация