Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
2 / 2 / 1
Регистрация: 08.10.2024
Сообщений: 13

Как указать диапазон с ячейкой у которой адрес это переменная?

08.10.2024, 12:14. Показов 1696. Ответов 21

Студворк — интернет-сервис помощи студентам
Приветствую специалистов данного форума!
Не имею никакого отношения к миру программирования, но появилась необходимость написать скрипт на VBS. Пытаюсь реализовать свои идеи уже неделю. Застрял на следующем моменте:
Я должен создать границы ячеек у заданного диапазона. Адрес левой верхней ячейки данного диапазона известен = A18 или (18,1). А вот с адресом нижней правой ячейки диапазона всё сложнее, он переменный, т.к. количество строк в документе эксель меняется. Я нашел номер последней строки в эксель документе, и пытаюсь как-то обозначить адрес нижней правой ячейки через номер этой последней строки, которую нашел. Но, ничего не получается. Пробую два варианта обозначения диапазона ячеек.
1й вариант выдаёт вот такую ошибку:
2й вариант выдает вот такую ошибку:

Подскажите, что делаю не так, в чём ошибка


Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Dim CONTAINER, REPORT
Set CONTAINER = CreateObject("Excel.Application")
Set REPORT = CreateObject("Excel.Application")
'Path to CSV file with 10 colums of data
CONTAINER.Application.Workbooks.Open "C:\Export\CONTAINER.csv", Delimetr ="," 
'Path to template for report
REPORT.Application.Workbooks.Open "C:\Export\REPORT.xltm"
REPORT.Visible=True
'getting data from CSV file 
CONTAINER.ActiveSheet.Cells.Copy
'past data into the template
REPORT.ActiveSheet.Cells(18,1).PasteSpecial(7)
REPORT.CutCopymode = false
REPORT.ActiveSheet.Cells(18,1).resize(,11).Interior.Colorindex=27
REPORT.ActiveSheet.Cells(18,1).Select
CONTAINER.ActiveSheet.cells(1,1).Copy
REPORT.CutCopymode = False
'Finding last row 
RowCount = REPORT.ActiveSheet.UsedRange.Rows.Count
'Highlight last row
REPORT.ActiveSheet.Cells(RowCount,1).resize(,11).Interior.Colorindex=27
'insert comment into the last Cell
REPORT.ActiveSheet.Cells(RowCount,11)= "Прогноз на забой"
'Creating Borders at the range from A18 to last Cell  
 
' Creating variable Y with adress  = $K$ & RowCount
Dim Y
Y = "$K$" & RowCount
'First attempt
REPORT.ActiveSheet.Range(" $A$18 : Y ").Borders.LineStyle = True
'Second attempt
REPORT.ActiveSheet.Range(Cells(18,1),Cells(26,RowCount)).Borders.LineStyle = True
CONTAINER.Quit
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.10.2024, 12:14
Ответы с готовыми решениями:

Как указать диапазон с ячейкой у которой адрес это переменная?
Приветствую специалистов данного форума! Не имею никакого отношения к миру программирования, но появилась необходимость написать скрипт...

Где указать адрес электронной почты, с которой будет делаться рассылка?
При регистрации должно приходить письмо на почту - не приходит, способ регистрации расширенный стоит. А где мыло то указать? или это в...

Вычислить адрес верхушки стека, адрес следующей команды, адрес переменной, адрес которой содержится в BX
Помогите решить следующие задачи: 1.Вычислить адрес верхушки стэка. 2.Вычислить адрес следующей выполняемой программы. 3. Вычислить...

21
2 / 2 / 1
Регистрация: 08.10.2024
Сообщений: 13
11.10.2024, 11:49  [ТС]
Студворк — интернет-сервис помощи студентам
Спасибо, вы итак очень помогли. Не хочу грузить своими задачами людей, тем более что на текущий момент все работает
0
 Аватар для KoGG
5730 / 1633 / 419
Регистрация: 23.12.2010
Сообщений: 2,455
Записей в блоге: 1
11.10.2024, 12:27
.....
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.10.2024, 12:27

Как указать диапазон?
Вывести список фамилий, имен, отчеств авторов(полеName_author) из таблицы Authors, у которых фамилия начинается на одну из букв...

Как указать диапазон случайных чисел?
Как указать диапазон случайных чисел?

Как указать диапазон значений в switch?
Знаю в Delphi можно указать в case 1..9, а как аналогично указать в Builder'е в switch?

Как указать диапазон IP адресов в массиве
всегда указывал один ip в массиве $ip = array( '66.249.78.38', '66.249.78.91', '66.249.78.27', ); а как указать...

Как указать диапазон, используя формулу
Подскажите, пожалуйста, как быть. Есть документ, в нём 100 листов. На каждом листе в столбце А стоят значения. При этом количество...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Новые блоги и статьи
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru