![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Формат ячеек в Excel
_1 © (2005-03-13 10:09:00)Подключение к Excel как к OLE-серверу.
Возможно ли скопировать формат [и значения] первой области ячеек во вторую область ячеек? Не используя буфер обмена, и не перебирая всех свойств ячеек.
_1 (2005-03-13 22:50:00) [1]Да, с удалением ненужных строк – самый быстрый вариант. То, что в [6] оченьмедленно работает.
YurikGL (2005-03-13 12:09:00) [2]
> _1 (13.03.05 11:29) [6]
Я бы твоем случае копировал шаблон, открывал его и работал бы уже в шаблоне. Удалял лишнюю информацию и т.д. Или вообще, хранил отдельно шаблон для вывода и отдельно файл с настройками...
_1 (2005-03-13 11:29:00) [3]Генератор отчёта. B шаблоне присутствует как выводимая в отчёт информация (форматирование, заголовки, расположение полей), так и служебная (заголовки и подножия групп, описание табличной части, тексты запросов), которая в результирующий отчёт не выводится, но анализируется и интерпретируется программой. Делаю так – создаю новый документ Excel, пробегаюсь по шаблону, и в новый документ вывожу только то, что нужно перебором всех свойств соответствующих ячеек шаблона.
YurikGL (2005-03-13 11:02:00) [4]Для решения частной подзадачи (есть отформатированная таблица, а количество строк неизвестно) я просто форматировал первые две-три строки как надо, потом новые строки добавлял между ними. Форматирование получал аналогичное форматированию строк, между которыми вставлял.
Если опишешь задачу подробнее, можно будет подумать...
YurikGL (2005-03-13 10:58:00) [5]Может тогда сохранять значение буффера, делать действие и потом значение буффера восстанавливать?
_1 (2005-03-13 10:55:00) [6]Буфер портится, проверял...
YurikGL (2005-03-13 10:52:00) [7]Правда, я не уверен, что в этом не учавствует буффер обмена...
YurikGL (2005-03-13 10:51:00) [8]Ключевое понятие - форматирование по образцу (иконка с кисточкой)
У меня макрос получился такой:
Sub Ìàêðîñ1()
'
' Ìàêðîñ1 Ìàêðîñ
' Ìàêðîñ çàïèñàí 13.03.2005 (Yurik)
'
'
Range("B3:C8").Select
Selection.Copy
Range("B11:C15").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
Форматирование с ("B3:C8") перенеслось на ("B11:C15")