|
в файле Excel программно добавить колонку
Страждущий, АгентБезопаснойНацио, Kongo2019, DrZombi, Мультук, Lazy Stranger, Ёпрст, Timon1405, Bad_Aleks, arsik, formista2000, Kobol, КнОпка, alexela, Garykom, El_Duke, ReaLg, СвинТуз, kir-g, Волшебник, nick86, laeg, mikecool, U4Me2, программистище, Fregat, Mr_Boogie, 1C-MasterS, RVN, Amra, Kigo_Kigo, Builder, yurikmellon2, Ненавижу 1С, okmail, Silgis, lEvGl
| ☑ |
0
КнОпка
15.04.25
✎
09:16
|
В существующем файле Excel необходимо программно добавить колонку, и не в любом месте
Какие методы можно использовать?
В интернете не находится
|
|
1
Ёпрст
15.04.25
✎
09:21
|
(0) .WorkSheets.Add()
|
|
2
АгентБезопасной Нацио
15.04.25
✎
09:24
|
Ну, как минимум два способа.
1.Записать макрос, посмотреть, и повторить это действие программно через объект
2. разобрать файл, и вставить.
|
|
3
АгентБезопасной Нацио
15.04.25
✎
09:26
|
(1) ему же не лист вставлять, а колонку...
|
|
4
Ёпрст
15.04.25
✎
09:30
|
3.прочитать файл в табличный документ (Прочитать), вставить колонку, записать файл..
|
|
5
СвинТуз
15.04.25
✎
09:31
|
Range("A1").EntireColumn.Insert
|
|
6
Ёпрст
15.04.25
✎
09:32
|
(3) да, тут ступил, ну смотреть, чего там в .Columns
|
|
7
СвинТуз
15.04.25
✎
09:39
|
Нейро
Подробности
На основе источников, возможны неточности
Содержимое ответа
Для программного вставки колонки в Excel можно использовать VBA и метод Insert. 14
Чтобы вставить один столбец, нужно использовать свойство «Весь столбец» и метод Insert. По умолчанию новый столбец будет добавлен перед указанной ячейкой. 2
Пример кода:
Указать ячейку с помощью объекта диапазона. 2
Ввести точку (.) для получения списка свойств и методов. 2
Выбрать свойство «Весь столбец» или ввести его. 2
В конце снова ввести точку (.) и выбрать метод Insert. 2
Пример кода: Range("A1").EntireColumn.Insert. 2
Чтобы вставить несколько столбцов, нужно указать диапазон столбцов, количество которых равно количеству столбцов, которые нужно добавить. 2
Пример кода: Range("C:G").EntireColumn.Insert. 2
Чтобы вставить столбец после определённого столбца, нужно использовать метод Insert и указать столбец, после которого нужно добавить новый. 2
Пример кода: Columns("E:E").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove. 2
Этот код говорит Excel вставить новый столбец справа от столбца E. 2
Более подробную информацию о программировании в Excel с использованием VBA можно найти на сайтах educba.com, excelchamps.com, wallstreetmojo.com и automateexcel.com.
|
|
8
СвинТуз
15.04.25
✎
09:33
|
учу гуглить. Дорого.
))
|
|
9
Ёпрст
15.04.25
✎
09:33
|
Хотя, в жж..пу экселапликатион, почти везде у себе повыкидывал это, задолбало потом прописывать комкомпоненты, часто отваливающиеся в рег задании. переписал на табличныйдок всё.
|
|
10
СвинТуз
15.04.25
✎
09:38
|
|
|
11
АгентБезопасной Нацио
15.04.25
✎
09:39
|
(9) Есть извраты с формулами. Как это сделать через табдок - не знаю. Через файл - можно. Через объект - легко, но все эти вечные проблемы с отсутствием установленного (и на сервере)
|
|
12
DrZombi
гуру
15.04.25
✎
09:42
|
(7) А как сделать тоже самое, без Екселя, на Linux (RED OS), используя R7 офис... Есть послабление, fаша екселька xlsx :)
|
|
13
Ёпрст
15.04.25
✎
09:49
|
(11) это да, но пока, формул особо нет, или особо извратов. Так, отчетность всякая.
|
|
14
АгентБезопасной Нацио
15.04.25
✎
09:53
|
(12) дык "позишен нумбер ту"...
|
|
15
Kongo2019
15.04.25
✎
09:56
|
(9) Формулы, красивости тама всякие. Так что продолжаем секас дальше. Пробовал напрямую файл редакторить, да ну его нафиг, это свой Эксель написать придется.
|
|
16
АгентБезопасной Нацио
15.04.25
✎
09:56
|
(15) красивости и в xml сделать можно. Но это тоже секас™
|
|