|
1C VS Excel. Добавить именованную область... | ☑ | ||
---|---|---|---|---|
0
FlashPoint
18.05.20
✎
17:48
|
Всем привет.
Вопрос прост и в то же время не понятен, как через COMОбъект в документе программно добавить область Range, диапазон ячеек известен. Excel.Sheets("obl").Range("R[2]C[1]:R["6"]C[1]").add(); выдает Произошла исключительная ситуация (0x800a03ec). Какой синтаксис тут? |
|||
1
Franchiser
гуру
18.05.20
✎
17:53
|
Range("A3:B3").Select
ActiveWorkbook.Names.Add Name:="тест", RefersToR1C1:="=Лист1!R3C1:R3C2" |
|||
2
FlashPoint
18.05.20
✎
17:53
|
(1) как этот скрипт на 1с перевести?
|
|||
3
Franchiser
гуру
18.05.20
✎
17:55
|
Ну погуглить можно:
ЭксельОбъект = Новый COMОбъект("Excel.Application"); ЭксельОбъект.DisplayAlerts = 0; Книга1 = ЭксельОбъект.WorkBooks.Add("D:\book.xls"); Книга1.Names.Add("name1","='Лист2'!R1C3:R6C3"); Книга1.SaveAs("D:\book.xls"); ЭксельОбъект.Quit(); |
|||
4
FlashPoint
18.05.20
✎
18:04
|
(3) Спасибо добрый человек! Спасибо!
|
|||
5
FlashPoint
18.05.20
✎
18:20
|
А как потом получить диапазон именованной ячейки?
|
|||
6
Franchiser
гуру
18.05.20
✎
21:19
|
Range попробуй.
Если выделить то: Application.Goto("тест") |
|||
7
FlashPoint
18.05.20
✎
22:21
|
(6) Нет, выделять не надо, мне надо получить диапазон выбранных ячеек, что бы подставить его в создаваемый выпадающий список как параметр:
Excel.Names.Add("Categories", "=Лист2!R2C1:R" + Строка(ТекущаяСтрока-1) + "C1"); Область_Categories = "" + "=Лист2!R2C1:R" + Строка(ТекущаяСтрока-1) + "C1"; Excel.Sheets(1).Cells(ТекущаяСтрока,21).Validation.Add(3,1,1, Область_Categories); //Excel.Sheets(1).Cells(ТекущаяСтрока,21).Validation.Add(3,1,1,"=Лист2!C[-20]"); Excel.Sheets(1).Cells(ТекущаяСтрока,21).Validation.IgnoreBlank=1; Excel.Sheets(1).Cells(ТекущаяСтрока,21).Validation.InCellDropdown=1; Excel.Sheets(1).Cells(ТекущаяСтрока,21).Validation.ShowInput=0; Excel.Sheets(1).Cells(ТекущаяСтрока,21).Validation.ShowError=1; И что бы не использовать переменную Область_Categories, я думаю, что как то можно через область получить ее диапазон ячеек, но мне кажется, что проще область не объявлять, так оптимальнее будет ) |
|||
8
FlashPoint
18.05.20
✎
22:27
|
Но вопрос остается открытым, как же все таки, из наименованной области вытянуть диапазон ячеек.Хотя у меня подозрение, что в этой области свой диапазон, он не как у остальных ячеек на листе
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |