|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.06.2019, 11:39 | #1 |
Регистрация: 21.08.2017
Сообщений: 4
|
Удаление объектов с листа Excel
Гугл не помог, поэтому нужен совет более опытных товарищей.
Есть файл .xlsm (excel с макросами и 3 кнопками на листе для их запуска). Есть конвертер из этого .xlsm в XML+Excel_без_части_данных. Требуется получать на выходе Excel_без_части_данных в формате .xlsx (т.е. без макросов). Макросы удаляются без проблем, а вот кнопки для их запуска остаются. Как удалить кнопки с листа? Приветствуются любые варианты. |
17.06.2019, 11:48 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
дык - макросом и удалить.
а какие тут могут быть варианты? 1) изменить код конвертера, который генерирует Excel_без_части_данных чтобы он лишнего туда не копировал. 2) удалять макросом не нужные объекты 3) удалять ручками (оператор вручную удаляет объекты) больше вариантов я не вижу. p.s. приложили бы сюда файл с кнопками... кнопки - они же вроде как разные объекты бывают. |
17.06.2019, 12:15 | #3 | |||
Регистрация: 21.08.2017
Сообщений: 4
|
К сожалению, это невозможно, т.к. файл выдается на заполнение клиентам и может редактировать очень много раз после конвертации. Так что удалять что-то из него до конвертации не вариант. После конвертации же в файле не должно оставаться ни одного макроса, так что это тоже не вариант.
Цитата:
Update: так не получится, потому что мы не можем быть уверены, что юзер напихает в исходный Excel и не можем знать, что именно надо копировать. Поэтому мы удаляем и скрываем часть информации, оставляя юзеру все остальное. Может, можно кнопки как-то скрыть? Может, POI что-то такое умеет, но я просто не нашла? Цитата:
Цитата:
Объект у кнопок: Shape. Последний раз редактировалось Lynx_by; 17.06.2019 в 12:20. |
|||
17.06.2019, 13:34 | #4 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
после конвертации кнопок в файле быть не должно. В чём противоречие то? в тот момент когда Цитата:
покажите ваш код, которым Вы удаляете из файла макросы. почему не вариант то?! Вы не знаете или не понимаете, что макросом можно обрабатывать ДРУГОЙ файл. В котором макросов ВООБЩЕ нет?! Последний раз редактировалось Serge_Bliznykov; 17.06.2019 в 13:39. |
||
17.06.2019, 14:31 | #5 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
я сделал набросок программы, пример обработки макросом файла с кнопками.
раз у Вас всё секретно настолько, что Вы не можете сделать файл пример, то оставляю доработку макроса (и алгоритма в целом) — на Вас. DeleteAllShapesButton.zip пользоваться так. 1) распаковать и положить два файла КнигаСМакросом.xlsm КнигаСКнопками.xlsx в один каталог 2) открыть книгу с макросом КнигаСМакросом.xlsm (если надо - то разрешить выполнение макросов) 3) нажать кнопку "Удалить кнопки из файла КнигаСКнопками.xlsx" 4) следовать инструкциям. примечания. а) открытый файл после удаления из него всех кнопок не закрывается (это сделано специально, чтобы дать возможность увидеть результат). Разумеется, его можно закрыть с сохранением изменений прямо из кода макроса. б) в код окончательного макроса лучше добавить выключение отображения на экран Application.ScreenUpdating = False в конце включить Application.ScreenUpdating = True ну и последнее. код макроса примитивный, выглядит так: Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удаление объектов с формы C++ | Yriy | C++ Builder | 0 | 30.03.2012 15:22 |
Удаление объектов | _-Re@l-_ | Общие вопросы Delphi | 7 | 16.06.2010 15:06 |
Удаление временных объектов | Kn793 | Общие вопросы C/C++ | 4 | 10.06.2010 23:22 |
Удаление объектов | PARTOS | Microsoft Office Excel | 2 | 11.05.2010 10:32 |
Excel: Удаление графиков и картинок с листа | treiber | Microsoft Office Excel | 5 | 04.09.2008 13:22 |