Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Office (Word, Excel, Outlook и т.д.) (http://forum.oszone.net/forumdisplay.php?f=115)
-   -   Удаление объектов на всех листах (http://forum.oszone.net/showthread.php?t=323039)

obtim 23-01-2017 11:25 2705479

Удаление объектов на всех листах
 
Один сотрудников умудряется каким-то образом напихать объектов в документ excel(xlsx). Как - не знает. В документе много страниц. На каждой выделять объекты через "выделение группы ячеек"-"объекты" и потом их удалять-немного запарно. Как выделить объекты на всех листах в документе?

Iska 23-01-2017 12:02 2705493

Цитата:

Цитата obtim
Один сотрудников умудряется каким-то образом напихать объектов в документ excel(xlsx). Как - не знает. »

Сначала сканируется какой-нибудь документ. Затем особо одарённое приложение для распознавания при отсутствии должного контроля со стороны исполнителя оформляет часть обрамления ячеек таблицы как текстовыенадписи и/или фреймы. Затем всё это дело перенаправляется в Excel/Word. Затем наступает этап «плодитесь и размножайтесь»: тот же или иной исполнитель начинает дублировать строки таблицы (разумеется, вместе с привязанными объектами), дабы увеличить потребное место. Затем дублирует листы, скажем, Январь дублируется в Февраль, затем в Март и т.д. В итоге Документ/Рабочая книга, красный размер которым со всем оформлением — пара сотен килобайт, расползается в размерах до нескольких десятков мегабайт, а открываться может — несколько минут вместо нескольких секунд.

Упакуйте пару-тройку образцов таких Рабочих книг в архив, каковой выложите на RGhost/Яндекс.Диск.

obtim 23-01-2017 12:33 2705510

Спасибо. Решение скорей всего будет таким:

Sub Del_All_Shapes_WB()
Dim shp As Shape
Dim ws As Worksheet

For Each ws In ThisWorkbook.Worksheets
For Each shp In ws.Shapes
shp.Delete
Next shp
Next ws
End Sub

Жду, когда закончится обработка

Iska 23-01-2017 12:52 2705521

Угу. Я примерно так и делал.


Время: 22:35.

Время: 22:35.
© OSzone.net 2001-