|
Программные группировки в Экселе из 1С | ☑ | ||
---|---|---|---|---|
0
mzelensky
20.03.12
✎
09:25
|
Доброго времени суток!
В экселе существует функция группировок строк и колонок (указанный диапазон можно сворачивать и разворачивать через кнопочку "+"). Вопрос - как программно (из под 1С через ком-объект) создать такие группировки определенных колонок??? П.С. понятно, что должна быть какая-то элементарная команда, но вопрос чисто в синтаксисе... |
|||
1
ДенисЧ
20.03.12
✎
09:26
|
Макросы в екселе научить записывать?
|
|||
2
mzelensky
20.03.12
✎
09:32
|
(1) научи! Еще не приходилось.
|
|||
3
mzelensky
20.03.12
✎
09:41
|
ап???
|
|||
4
Wobland
20.03.12
✎
09:46
|
(0) как группировка по-английски будет?
|
|||
5
dk
20.03.12
✎
09:47
|
(2) стыдно должно быть однако
открываешь ексель в 2007-м Вид - Макросы - Начать запись группируешь или еще что-нить делаешь Вид - Макросы - Остановить запись ---- Чтобы посмотреть что записалось Вид - Макросы - Макросы - изменить |
|||
6
mzelensky
20.03.12
✎
09:56
|
(5) Ок, а как это из 1С сделать?
|
|||
7
mzelensky
20.03.12
✎
09:57
|
(4) "group".
А дальше??? |
|||
8
mzelensky
20.03.12
✎
10:08
|
(1) (4) (5) народ, ну что за привычка говорить "А" и не договаривать "Б"...и даже не придирайтесь к тому, что я "не так вопрос поствил в (0)". Я спросил - "как программно (из под 1С через ком-объект) создать такие группировки определенных колонок" - ключевая фраза "программно (из под 1С через ком-объект)" ???
|
|||
9
dk
20.03.12
✎
10:09
|
(6) Через OLE объект
только надо хоть немного разобраться в объектной модели Excel, потому что макрос записывается в контексте открытого эксель, а в OLE надо будет этот контест задать ---- Если совсем нуб в екселе - была где-то обработка которая текст макроса в код для 1с конвертит |
|||
10
Buster007
20.03.12
✎
10:11
|
(6) после того как ты запишешь макрос и нажмешь кнопку изменить, то пред тобой откроется путь к истине ) ты увидишь код, который делает группировку, а потом можно его скопировать в 1С, подправить чуть-чуть и будет тебе счастье )
|
|||
11
dk
20.03.12
✎
10:12
|
в поиск не помешает сходить - готовые примеры поглядеть
Книга знаний: Чтение и запись текущего листа Excel из 1С 7.7 |
|||
12
mzelensky
20.03.12
✎
10:15
|
(11) а это тут причем? там ток чтение/запись инфы в Эксель...эт я умею
|
|||
13
Tatitutu
20.03.12
✎
10:19
|
Range(Cells(10, 1), Cells(17, 1)).Select
Selection.Rows.Group |
|||
14
Wobland
20.03.12
✎
10:19
|
(12) ты уже увидел код в екселе, который тебе всё группирует?
|
|||
15
mzelensky
20.03.12
✎
11:33
|
В итоге нашел как работать с макросами, вроде получилось сделать группировку, но еще один ньюанс. Макрос выдал мне код:
Columns(""A:G"").Select Selection.Columns.Group т.е. область задается буквенными показателями. Сделать как в (13) не удалось - выдает ошибку синтаксиса. Как переделать на Range(Cells(10, 1), Cells(17, 1)).Select ? |
|||
16
mzelensky
20.03.12
✎
12:02
|
???
|
|||
17
mzelensky
20.03.12
✎
12:15
|
(13) ну подскажи еще чуток
|
|||
18
Wobland
20.03.12
✎
12:27
|
(15) а как ты хочешь так группировать? только с 10й по 17ю строки в первой колонке? не могу представить
|
|||
19
sanja26
20.03.12
✎
12:29
|
Вместо Cells - row..
|
|||
20
mzelensky
20.03.12
✎
12:47
|
(19) почему "row" ? "row" это же строки...
|
|||
21
mzelensky
20.03.12
✎
12:50
|
(18) нет я хочу группировать колонки с 1 по 10 (например)
|
|||
22
Wobland
20.03.12
✎
12:50
|
(20) ну-ка удали (20) ;)
|
|||
23
Wobland
20.03.12
✎
12:50
|
(21) примени группировку целиком к столбцу
|
|||
24
mzelensky
20.03.12
✎
12:53
|
(21)
Я и применил к столбцу: Columns(""A:G"").Select Номне нужно не буквами ,а цифрами...пробовал так: Range(Cells(1, 1), Cells(1, 7)).Select Т.е. я хочу выделить 7 колонок, но как-нибудь через цифровые параметры, т.к. через буквенные мне не удобно переводить |
|||
25
sanja26
20.03.12
✎
13:01
|
Пробел вместо первого параметра не пробовал?
|
|||
26
mzelensky
20.03.12
✎
13:05
|
(25) не пробовал...
|
|||
27
Tatitutu
20.03.12
✎
13:06
|
Range(Cells(1, 1), Cells(1, 7)).Select
Selection.Columns.Group |
|||
28
mzelensky
20.03.12
✎
13:13
|
(27) блин, извиняюсь...тупанул... "Select" не туда вставил :)
Все, заработало - СПАСИБО!!! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |