Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.02.2009, 12:38   #1
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию Сохранить копию файла без макросов

Есть книга с макросами. Сохраняю копию этой книги через Workbook.SaveCopyAs. Как сохранить копию этой книги без макросов?
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 19.02.2009, 13:46   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

В смысле, надо просто удалить все макросы из файла перед сохранением под другим именем?

Так это без проблем.
Код:
Sub DeleteModulesAndCode()    ' удаляет весь код VBA из текущего файла
    Set iVBComponents = ThisWorkbook.VBProject.VBComponents
    For Each iVBComponent In iVBComponents
        Select Case iVBComponent.Type
            Case 1 To 3: iVBComponents.Remove iVBComponent
            Case 100
                With iVBComponent.CodeModule
                    .DeleteLines 1, .CountOfLines
                End With
        End Select
    Next
End Sub

Последний раз редактировалось EducatedFool; 19.02.2009 в 13:49.
EducatedFool вне форума Ответить с цитированием
Старый 19.02.2009, 13:49   #3
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
По умолчанию

я подобный вопрос задавал на форуме получил ответ который использую в своих прогам смотри здесь
Юнлинг вне форума Ответить с цитированием
Старый 19.02.2009, 13:49   #4
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Нет, не удалять макросы из файла перед сохранением. Исходный документ так и остается открытым, только копия его сохраняется в другом месте. Копия при этом не открывается.
Этот макрос выполняется при открытии книги. Если дата сохранения этой книги не сегодняшняя, то копия книги создается, а сама книга очищается ненужных листов.

Добавлено позже
Решил задачу сравнением имени файла с шаблоном. Это быстрее, чем открывать копию файла и удалять из нее макросы. Я думал, может есть какой-то метод при сохранении файла указать, что нужно сохранить его без макросов.
Лучше день потерять — потом за пять минут долететь!©

Последний раз редактировалось viter.alex; 19.02.2009 в 14:27.
viter.alex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сохранить листы (Лист1-Лист2-Лист3 и т.д.) из одного файла в несколько разных? Kilobox Microsoft Office Excel 4 28.01.2009 18:39
как сохранить всю книгу, только значений без формул? katlis Microsoft Office Excel 5 17.12.2008 11:59
сохранение таблицы без макросов Юнлинг Microsoft Office Excel 5 27.11.2008 13:26
Циклическое проигрывание midi-файла без разрывов в звучании LordYuri Мультимедиа в Delphi 2 23.04.2008 18:09
Данные сохранить в файл и без перезапуска программы отобразить в grid-e xdevi Помощь студентам 2 29.01.2008 09:17