VBS, форматирование ячеек Excel
Формулировка задачи:
Всем доброго времени суток!
Нужна Ваша помощь, коллеги.
Работаю в БК (БОСС-кадровик), работа над формированием отчета, как я понял - на vbs. Сильно не пинайте, раньше никогда с БК не работал.
На текущий момент имеется следующий код:
В итоге я получаю excel-файл, который сразу открывается и заполнен данными, которые получает запрос. Заполняю начиная со второй строки (первая строка нечто вроде шапки).
Получаю в итоге что-то вроде такой таблицы в excel:
шапка шапка шапка шапка шапка
11111 11111 11111 ааааа ааааа
11111 11111 11111 ааааа ааааа
22222 22222 22222 ааааа ааааа
22222 22222 22222 ааааа ааааа
22222 22222 22222 ааааа ааааа
33333 33333 33333 ааааа ааааа
33333 33333 33333 ааааа ааааа
Нужно ее переформатировать вот в такой вид:
шапка шапка шапка шапка шапка
11111 11111 11111 ааааа ааааа
ааааа ааааа
22222 22222 22222 ааааа ааааа
ааааа ааааа
ааааа ааааа
33333 33333 33333 ааааа ааааа
ааааа ааааа
Т.е. если в первом, втором и третьем столбце значение совпадает с предыдущим - то ячейки 1го, 2го и 3го столбце в этой строке очистить. И так до конца документа.
Каким образом можно подобное реализовать?
Заранее благодарю за ответ.
Нужна Ваша помощь, коллеги.
Работаю в БК (БОСС-кадровик), работа над формированием отчета, как я понял - на vbs. Сильно не пинайте, раньше никогда с БК не работал.
На текущий момент имеется следующий код:
В итоге я получаю excel-файл, который сразу открывается и заполнен данными, которые получает запрос. Заполняю начиная со второй строки (первая строка нечто вроде шапки).
Получаю в итоге что-то вроде такой таблицы в excel:
шапка шапка шапка шапка шапка
11111 11111 11111 ааааа ааааа
11111 11111 11111 ааааа ааааа
22222 22222 22222 ааааа ааааа
22222 22222 22222 ааааа ааааа
22222 22222 22222 ааааа ааааа
33333 33333 33333 ааааа ааааа
33333 33333 33333 ааааа ааааа
Нужно ее переформатировать вот в такой вид:
шапка шапка шапка шапка шапка
11111 11111 11111 ааааа ааааа
ааааа ааааа
22222 22222 22222 ааааа ааааа
ааааа ааааа
ааааа ааааа
33333 33333 33333 ааааа ааааа
ааааа ааааа
Т.е. если в первом, втором и третьем столбце значение совпадает с предыдущим - то ячейки 1го, 2го и 3го столбце в этой строке очистить. И так до конца документа.
Каким образом можно подобное реализовать?
Заранее благодарю за ответ.
Решение задачи: «VBS, форматирование ячеек Excel»
textual
Листинг программы
Dim row Dim baserow With WorkBook.Worksheets(1) baserow=2 row=3 Do Until IsEmpty(.Cells(row,1)) If .Cells(baserow,1)=.Cells(row,1) And .Cells(baserow,2)=.Cells(row,2) And .Cells(baserow,3)=.Cells(row,3) Then .Cells(row,1) = "" .Cells(row,2) = "" .Cells(row,3) = "" Else With .Range("A" & baserow & ":H" & row).Borders(7) .LineStyle = 1 End With With .Range("A" & baserow & ":H" & row).Borders(8) .LineStyle = 1 End With With .Range("A" & baserow & ":H" & row).Borders(9) .LineStyle = 1 End With With .Range("A" & baserow & ":H" & row).Borders(10) .LineStyle = 1 End With baserow = row End If row = row + 1 Loop End With
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д