powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Задача определенных параметров для xls-файла
4 сообщений из 4, страница 1 из 1
Задача определенных параметров для xls-файла
    #33678524
Лисонька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Леди и джентльмены, прошу помощи!
У меня из VFP данные скидывались в Excel через шаблонный xls-файл - операторам требовалась такая рабочая таблица, без всяких выкрутасов и украшений. Теперь на это дело обратило внимание начальство, получающийся xls-файл им понравился. И теперь начальство требует для этого файла следующее в обязательном порядке:
1. Обрамление ячеек таблицы.
2. Подписи и сумма в нескольких столбцах внизу каждой страницы.
3. Итоговая строка в конце таблицы.
Число строк на странице различно. Общее число используемых строк на эксельском листе тоже.
Можно ли эти три задачи решить через мой шаблон и, если да, то как?
Благодарю
...
Рейтинг: 0 / 0
Задача определенных параметров для xls-файла
    #33679458
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛисонькаМожно ли эти три задачи решить через мой шаблон и, если да, то как?
Благодарю
Можно. Примерно так:
повесить на какое-нибудь событие (например на открытие книги),
процедуру с нужным алгоритмом:
пробегаем по строкам выставляя границы,
в нужных местах добавляем строки формулы и разрывы страниц.

Код: plaintext
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.
Sub Workbook_Open()
    Dim i As Long, h As Long, f As Long
    If ActiveSheet.Cells( 1 ,  1 ) = "" Then Exit Sub 'проверка что не шаблон
    i =  1  ' строка начала таблицы
    f = i
    h = ActiveSheet.Rows( 1 ).Height
    'пробег до поледней заполненой ячейки
    Do While i <> ActiveSheet.Cells(Rows.Count,  5 ).End(xlUp).Row 
        i = i +  1 
        'устанавливаем границы
        With ActiveSheet.Range(Cells(i,  1 ), Cells(i, ActiveSheet.UsedRange.Columns.Count))
            .Borders(xlEdgeLeft).LineStyle = xlContinuous
            .Borders(xlEdgeTop).LineStyle = xlContinuous
            .Borders(xlEdgeBottom).LineStyle = xlContinuous
            .Borders(xlEdgeRight).LineStyle = xlContinuous
            .Borders(xlInsideVertical).LineStyle = xlContinuous
        End With
        ActiveSheet.Rows(i +  1 ).AutoFit
        h = h + ActiveSheet.Rows(i +  1 ).Height ' считаем высоту
        If h >  700  Then
            ActiveSheet.Rows(i +  1 ).Insert Shift:=xlDown ' добавляем строку
            ' устанавливаем разрыв страницы
            ActiveSheet.HPageBreaks.Add Before:=ActiveSheet.Cells(i +  2 ,  1 )
            'вставляем формулу  в 5-ый столбец
            ActiveSheet.Cells(i +  1 ,  4 ) = "Total:"
            ActiveSheet.Cells(i +  1 ,  5 ).FormulaR1C1 = "=SUM(R[-" & f & "]C:R[-1]C)"
            f = i +  2  '
            h = ActiveSheet.Rows(i +  2 ).Height '
            i = i +  1 
        End If
    Loop
End Sub
...
Рейтинг: 0 / 0
Задача определенных параметров для xls-файла
    #33680326
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkodorповесить на какое-нибудь событие (например на открытие книги),Лучше не на открытие книги, а сразу после загрузки данных в шаблон. В шаблоне создается макрос типа показанного, ему дается стандартизированное имя (например FormatReport). VFP запускает Эксель с шаблоном, пихает туда данные, потом запускает макрос. А макрос уже сделает все красивости.
А если форматирующий макрос вешать на открытие книги, он будет запускаться каждый раз при старте. А это не так уж весело :)
...
Рейтинг: 0 / 0
Задача определенных параметров для xls-файла
    #33682033
Лисонька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Класс! Правда сейчас в коде улавливаю только смысл. Так что сначала буду разбирать его для себя, а потом уж применю к своему случаю.
Спасибо всем-всем-всем.
Елизавета Скрунскайте
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Задача определенных параметров для xls-файла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]