
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
17.12.2007, 21:07
|
|||
|---|---|---|---|
|
|||
Вставка данных в Exel |
|||
|
#18+
Из некоторой программной среды посредствам Select запроса, данные(строки) передаются в Exel - поле Rawdata. После этого заполняется бланк формы в Exel и все значения из RawData, передаются в Layout (Код на VB). Затем, после заполнения строковых данных в Layout (предположим их 20 записей), происходит вставка таблички из закладки Footer. For i = 1 To RowsCount Sheets("Layout").Range("A" + CStr(i + 37)).Value = Sheets("RawData").Range("A" + CStr(i)) Sheets("Layout").Range("B" + CStr(i + 37)).Value = Sheets("RawData").Range("G" + CStr(i)) Sheets("Layout").Range("C" + CStr(i + 37)).Value = Sheets("RawData").Range("C" + CStr(i)) Sheets("Layout").Range("F" + CStr(i + 37)).Value = Sheets("RawData").Range("D" + CStr(i)) Sheets("Layout").Range("G" + CStr(i + 37)).Value = Sheets("RawData").Range("E" + CStr(i)) Sheets("Layout").Range("H" + CStr(i + 37)).Value = Sheets("RawData").Range("F" + CStr(i)) Sheets("Layout").Range("E" + CStr(i + 37)).Value = Sheets("RawData").Range("O" + CStr(i)) Next Application.GoTo Reference:="Footer" Selection.Copy Sheets("Layout").Select Range("A" + CStr(RowsCount + 38)).Select ActiveSheet.Paste Проблема: Предположим записей будет вставлятся не 20, а 150, то соответственно, Footer тоже будет втавляться вконце всех записей. Нужно: Footer вставлять не вконце всех записей, а вконце каждой Exel страницы. Т.е. например втавить на странице 20 записей с 37 строки и потом вставлять Footer, затем переход на новую страницу, вставка следующих 20 записей и Footer и т.д. Как в соответствии с этим поменять код в VB. Заранее спасибо за ответ. P.S. Footer это таблица, где выполняется дальнейшая обработка всех вставляемых строк. И нужно выводить RowsCount между 1 и 20 и после этого всталять после каждой 20 записи на каждой странице Footer. Только как условие правильно написать, чтобы выводить до 20 записей??? Application.GoTo Reference:="Footer" Selection.Copy Sheets("Layout").Select Range("A" + CStr(RowsCount + 38)).Select ActiveSheet.Paste Нужно типа if RowsCount 1 Between 20, то переносить остальные строки на след страницу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=60&tablet=1&tid=2162937]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
62ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 337ms |

| 0 / 0 |
