|
Ексель, флажок | ☑ | ||
---|---|---|---|---|
0
Pandoch
02.12.14
✎
16:54
|
В екселе можно вставить, включив режим "Разработчик" флажок в ячейку, связав его с ней. Как это можно сделать программно? Вставить в ячейку флажок?
|
|||
1
mzelensky
02.12.14
✎
16:56
|
(0) макросом
|
|||
2
mzelensky
02.12.14
✎
16:57
|
Запускаешь запись макросов. Вставляешь в экселе флажок (интерактивно). Останавливаешь запись макросов. Смотришь получивший ся и выполняешь программно.
|
|||
3
Pandoch
02.12.14
✎
16:59
|
подскажите, как запустить запись макроса тогда) это из екселя самого делать?
|
|||
4
Pandoch
02.12.14
✎
17:01
|
все, разбираемся вроде
|
|||
5
Pandoch
02.12.14
✎
17:13
|
помогите теперь это перенести в код 1с))
ActiveSheet.CheckBoxes.Add(633, 305.25, 24, 17.25).Select Range("I20").Select ActiveSheet.Shapes.Range(Array("Check Box 12")).Select Selection.Characters.Text = "" With Selection .Value = xlOff .LinkedCell = "$I$18" //связываем ячейку и флажок .Display3DShading = False End With Тут select-ты всякие, и присваивается флажок по координатам, не ясно, как присвоить его конкретной ячейке, и вообще как без select создавать его. |
|||
6
SiAl-chel
02.12.14
✎
17:24
|
(5) Не селекты, а селекшены, то есть диапазон выбранных ячеек. Диапазоном ячеек может быть что угодно: от одной ячейки до всех ячеек листа. В данном случае выбранный диапазон ячеек это ячейка с адресом I20. Можешь вместо Selection запросто писать Range("I20").
С COM-соединениями хотя бы работал? Если нет, то срочно листать литературу. В документации по 1С там целая глава. |
|||
7
Pandoch
02.12.14
✎
17:50
|
Работал) уже почти получилось. подскажите еще, как сделать невидимым текст ячейки? нашелся такой код: cell.Font.Color = vbWhite
как задать значение vbWhite в 1с? |
|||
8
mikecool
02.12.14
✎
17:52
|
(7) в записи макроса ставишь бряк и смотришь - чему это значение равно
|
|||
9
Sei Souma
02.12.14
✎
17:52
|
Посмотреть в справке Экселя из макроса значения констант
|
|||
10
tridog
02.12.14
✎
17:53
|
(7) Const vbWhite = 16777215 (&HFFFFFF)
|
|||
11
Pandoch
02.12.14
✎
17:58
|
Спасибо всем. В итоге вышло так:
Лист.Cells(count,9).Interior.color = 192192; //мой цвет ячейки x = Лист.Cells(count,9).Left + Лист.Cells(count,9).Width / 2 - chsize / 2; y = Лист.Cells(count,9).Top + Лист.Cells(count,9).Height / 2 - chsize / 2; бокс = Лист.CheckBoxes.Add(x, y , chsize, chsize); бокс.Text = ""; адрес = Лист.Cells(count,9).address; бокс.LinkedCell = адрес; Лист.Cells(count,9).Font.Color = 192192; //цвет шрифта такой же задаю |
|||
12
Pandoch
02.12.14
✎
17:59
|
выше:
chsize = 15; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |