Почему макросы в excel не сохраняются

 

Artakey

Пользователь

Сообщений: 29
Регистрация: 12.07.2019

Здравствуйте

Подскажите пожалуйста в чем может быть дело: не сохраняются макросы в Excel, даже и записываться не хотят. Вернее записываются только в «этой книге», но и потом когда ее повторно открываешь — макросов уже нет
скрины приложу

http://vfl.ru/fotos/03d628fb36203966.html
http://vfl.ru/fotos/c179fbaf36203967.html
http://vfl.ru/fotos/07fbb49436203968.html

подскажите пожалуйста как сделать. чтобы записывать и сохранять макросы

заранее спасибо

 

сохраните файл с макросом в формате поддерживающем сохранение с макросами

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

Artakey

Пользователь

Сообщений: 29
Регистрация: 12.07.2019

 

Ігор Гончаренко,
А как вообще может получиться сохранение файла с макросами в формате их не поддерживающим? У меня, например, если я работаю в файле *.xlsx и в него добавляю макрос, то при сохранении формат сам меняется на *.xlsm.

 

New

Пользователь

Сообщений: 4582
Регистрация: 06.01.2013

Обычно если в файл xlsx добавить макрос и нажать сохранить, то Excel сразу выводит большое длинное сообщение, что при сохранении макрос не будет сохранен и для сохранения макроса нужно нажать «Нет» и выбрать сохранить как XLSM

 

Ігор Гончаренко

Пользователь

Сообщений: 13746
Регистрация: 01.01.1970

#6

11.10.2021 17:00:18

Цитата
Неопытный_Экселист написал:
У меня, например, если я работаю в файле *.xlsx и в него добавляю макрос

напишите мне пошаговую инструкции, попытаюсь смоделировать это у себя на компьютере

Цитата
Неопытный_Экселист написал:
А как вообще может получиться сохранение файла с макросами в формате их не поддерживающим

у вас обычных xlsх-файл
вам на форуме написали макрос, вы создали в файле модуль, скопировали туда макрос, выполнили его и он даже отработал
а потом нажали кнопку сохранить файл, не стали читать что там написано в окне сообщений, быстро нажали ДА  — вот и все!
файл с макросов сохранен в формате не поддерживающем макросы.
закройте его, откройте снова, а макроса там уже нет!

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

_Igor_61

Пользователь

Сообщений: 3007
Регистрация: 18.07.2016

#7

11.10.2021 17:45:02

Цитата
Неопытный_Экселист написал:
У меня, например, если я работаю в файле *.xlsx и в него добавляю макрос, то при сохранении формат сам меняется на *.xlsm.

Какая версия Excel & Win? Это на самом деле правда, о чем Вы пишите?

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

#8

11.10.2021 18:09:23

Цитата
_Igor_61: Это на самом деле правда, о чем Вы пишите?

о — вы просто ещё мало знакомы с этим пассажирчиком  :D

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Неопытный_Экселист

Пользователь

Сообщений: 178
Регистрация: 25.06.2021

#9

11.10.2021 18:12:39

Цитата
_Igor_61 написал:
Это на самом деле правда, о чем Вы пишите?

В Эксель 2010 и выше — не проверял, так как сразу создавал файл *.xlsm. А вот когда я начинал работать с первым эксель, где появились форматы xlsx и xlsm (Эксель 2007, если правильно помню), то я ни разу вручную не выбирал формат файла при сохранении.

 

sokol92

Пользователь

Сообщений: 4446
Регистрация: 10.09.2017

#10

11.10.2021 18:28:58

Цитата
_Igor_61 написал:
Это на самом деле правда

Можно по умолчанию новые книги сохранять как книги с поддержкой макросов (независимо от фактического наличия макросов).
Файл / Параметры / Сохранение / Сохранять файлы в следующем формате: Книга Excel c поддержкой макросов.

Владимир

 

andylu

Пользователь

Сообщений: 274
Регистрация: 29.03.2018

а меня в описании темы смутило что макросы:
а) не пишутся (тогда как запись стартует независимо от формата файла, запрос совместимости пойдет в момент сохранения)
б) предупреждение о книге макросов что должна оставаться открытой для записи (не в ридонли ли случайно она? или в целом система для юзера?)
в) скрин «запись невозможна» вообще нет предположений почему.

И все эти пункта никак связаны с форматами файла в момент сохранения….

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

#12

12.10.2021 10:04:27

Цитата
sokol92: по умолчанию новые книги сохранять как

приветствую!
Сменить тип файла для сохранения по умолчанию и «формат файла сам меняется при наличии макросов» — всё-таки не одно и тоже  :)
А за инфу спасибо. Вроде знал, а всё никак руки не доходили сменить. Вот теперь сменил  :D

Изменено: Jack Famous12.10.2021 10:05:04

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

_Igor_61

Пользователь

Сообщений: 3007
Регистрация: 18.07.2016

#13

12.10.2021 17:36:59

Да уж…

Цитата
Jack Famous написал:
Сменить тип файла для сохранения по умолчанию и «формат файла сам меняется при наличии макросов» — всё-таки не одно и тоже

Не одно и тоже — 100%, согласен.

Господину «

Неопытный_Экселис

т»  сказочно повезло. Со всякой очередной (начиная с 2007 и по сих пор) с каждой новой устанавливаемой версией его системный администратор на его компьютере делал то, что описано в #10. Но почему-то не предупреждал пользователей об этом, даже тех, кто не знает что такое макросы и в каком формате они живут…   :) Не иначе администратор — шпион :) Или администратор очень любит предпочтения г-на «

Неопытного_Экселис

т»-а   (макросы)   :)  Либо «

Неопытному_Экселис

т-у» также сказочно повезло со всеми версиями «из коробки», которые ему доставались…. :)
Прошу не обижаться, это просто шутка,:)

Изменено: _Igor_6112.10.2021 17:37:52

Создать макрос в Excel можно, запустив средство записи макросов или с помощью редактора Visual Basic для приложений (VBA). После создания макроса следует сохранить его для возможности повторного использования в текущей или в других книгах.

Сохранение макроса в текущей книге

Если понадобится использовать макрос только в той книге, где он был создан, нажмите кнопку Сохранить или Сохранить как так же, как при обычном сохранении. Но сохранение книги с макросами происходит несколько иначе, поскольку необходимо использовать специальный формат файла «с поддержкой макросов». Поэтому при попытке сохранить макрос Excel предложит два варианта:

Книга с макросами или кодом VBA

  • Сохранить в виде книги с поддержкой макросов (XLSM-файл), выбрав Нет.

  • Сохранить в виде книги без поддержки макросов, выбрав Да.

Чтобы сохранить макрос как книгу с поддержкой макросов,

  1. щелкните Нет.

  2. В окне Сохранить как в раскрывающемся списке Тип файла выберите Книга Excel с поддержкой макросов.
    Сохранить как книгу с поддержкой макросов

  3. Нажмите кнопку Сохранить.

Создание и сохранение макросов в личной книге

Чтобы макросы были доступны при каждом запуске Excel, создайте их в книге «Personal.xlsb». Это скрытая книга на вашем компьютере, которая открывается при каждом запуске Excel. Для получения сведений о выполнении этих действий см. статью Создание и сохранение всех макросов в одной книге.

Нужна дополнительная помощь?

0 / 0 / 0

Регистрация: 17.01.2013

Сообщений: 37

1

Макрос не сохраняется при закрытии книги

05.02.2013, 01:34. Показов 18400. Ответов 11


Студворк — интернет-сервис помощи студентам

итак, у меня пару вопросов, уважаемы эксперты.
Во-первых, почему когда я создаю макрос, после закрытия-открытия файла он исчезает, может куда нажаь нужно???
Во-вторых, я не знаю точно как сделать задание 2.3, как создатьмакрос (процедуру-подпрограмму)????
Заранее всех благодарю, посмотрите, пожалуйста.



0



5468 / 1148 / 50

Регистрация: 15.09.2012

Сообщений: 3,514

05.02.2013, 06:58

2

Цитата
Сообщение от taratara
Посмотреть сообщение

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

в программе «VBA» нажимайте кнопку «Сохранить».



1



53 / 38 / 3

Регистрация: 25.01.2013

Сообщений: 368

05.02.2013, 07:17

3

Цитата
Сообщение от taratara
Посмотреть сообщение

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

надо сохранить с поддержкой макроса с расширением (.xlsx) скорее всего

Добавлено через 2 минуты

Цитата
Сообщение от taratara
Посмотреть сообщение

Во-вторых, я не знаю точно как сделать задание 2.3, как создатьмакрос (процедуру-подпрограмму)????

Кроме вас никто не знает лучше что именно надо, но по приведенному примеру можно лучше и эффективнее воспользоваться стандартны функциями Экселя и произвести условное форматирование, чем писать по задаче код



1



5468 / 1148 / 50

Регистрация: 15.09.2012

Сообщений: 3,514

05.02.2013, 07:28

4

taratara, задание 2.2.



1



5468 / 1148 / 50

Регистрация: 15.09.2012

Сообщений: 3,514

05.02.2013, 07:57

5

Пункт 1

Султанов, на Форуме есть следующие категории людей:

  1. студенты. Им задают задания в учебных заведениях. Студенты делятся на две группы: одним студентам нужна только работающая программа, другим нужно, чтобы программа была написана по каким-то правилам;
  2. люди, которые работают в программах MS Office, и которые хотят ускорить свою работу или избавиться от монотонной работы;
  3. программисты, которые сталкиваются с какими-то проблемами и спрашивают, как решить проблему.

Я предполагаю, что эту тему создал студент, которому нужно сделать задание по каким-то правилам.

Пункт 2

Цитата
Сообщение от Султанов
Посмотреть сообщение

надо сохранить с поддержкой макроса с расширением (.xlsx) скорее всего

формат Excel-файлов с поддержкой макросов — xlsm.

Пункт 3

taratara, по заданию 2.3. не понятно, для каких ячеек искать максимальное число:

  1. в диапазоне «C3:H8»?
  2. определять максимальное число для всего диапазона «C3:H8» или для каждой строки, например, для строки «C3:H3» и т.д.?



1



11482 / 3773 / 677

Регистрация: 13.02.2009

Сообщений: 11,147

05.02.2013, 10:52

6

или для каждой строки, например, для строки

В задании же ясно указано: для каждой строки.
И, кстати, функция дана готовая. ТС не может сам переписать в модуль?



1



5468 / 1148 / 50

Регистрация: 15.09.2012

Сообщений: 3,514

05.02.2013, 10:55

7

Цитата
Сообщение от Alex77755
Посмотреть сообщение

В задании же ясно указано: для каждой строки.

я читал задание в сообщении #1 на скрин-шоте. Задание 2.3.



1



es geht mir gut

11264 / 4746 / 1183

Регистрация: 27.07.2011

Сообщений: 11,437

05.02.2013, 12:24

8

Такое подойдёт?



1



es geht mir gut

11264 / 4746 / 1183

Регистрация: 27.07.2011

Сообщений: 11,437

05.02.2013, 12:42

9

Подправил



1



0 / 0 / 0

Регистрация: 17.01.2013

Сообщений: 37

05.02.2013, 19:23

 [ТС]

10

Спасибо Всем большое. До задания 2.2 я вроде верно сделала, ее делать не надо, я добавила просто все задание.
Начиная с задания 2.3- я не знаю как делать правильно, у меня не получается.
SoftIce, у меня почему-то как у Вас заливка красным цветом не получилось



0



es geht mir gut

11264 / 4746 / 1183

Регистрация: 27.07.2011

Сообщений: 11,437

05.02.2013, 19:50

11

Странно, у меня всё работает, и ваш макрос «Цвет» тоже.

Если в выделенном диапазоне ячеек содержатся ячейки с отрицательным значением — то они заливаются красным

Миниатюры

Макрос не сохраняется при закрытии книги
 



1



Казанский

05.02.2013, 20:35


    Макрос не сохраняется при закрытии книги

 Комментарий модератора 
taratara, обратите внимание на Правила, пп. 4.3, 4.4, 5.18.



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

05.02.2013, 20:35

Удаление листов из книги при закрытии
Добрый день.
нужно при закрытии файла удалить все листы, кроме листа "Макрос".
Использую такую…

Выполнение события при закрытии книги
1)Знаю как зделать выполнение события при открытии книги:
Private Sub Workbook_Open()
End Sub
Ка…

Закрытие книги Excel при закрытии формы
В общем хочу, чтобы при любом завершении моего приложения, срабатывал код закрытия книги. Через…

При закрытии Form всё сохраняется, как очистить всё?
Здравствуйте, такой вопросик, при закрытии формы, хоть me.close(), хоть me.hide(), всё почему то…

При закрытии одной книги записать информацию во вторую
Всем привет) столкнулся с проблемой: есть две книги в одну заношу информацию, и во вторую заношу…

Как при закрытии книги эксель — убрать иконку
Добрый вечер.
Помогите решить вопрос.

При открытии файл эксель подгружает иконку (.ico) по…

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

12

Добрый день!!! Что то случилось. Перестали работать все макросы в excel,все они были выведены на панель быстрого допуска.Сейчас в книгах макросов нет ни одного макроса,куда они подевались? Сейчас макрос записывается и работает,но при выходе из Excel он перестает работать и книга макросов снова пуста.Раньше после записи макроса и выхода из Excel запрашивалось потверждение о сохранении макроса для его дальнейшей работы сейчас нет. Помогите разобрать с этой ситуацией.   

Sub vib_krasnodar()

‘ Макрос4 Макрос


    Columns(«A:A»).Select
    Selection.TextToColumns Destination:=Range(«A1»), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
        Array(7, 1), Array(8, 1)), TrailingMinusNumbers:=True
End Sub

Безопасность макросов Excel — это защита от вирусов, которые могут проникнуть в компьютер вместе с макросами. Безопасность макросов значительно изменилась со времени выхода в свет Excel 2003, поэтому в рамках данной темы особенности старых и новых версий Excel будут рассмотрены раздельно:

  • Безопасность макросов в современных версиях Excel (2007 и более новых)
  • Безопасность макросов в Excel 2003

Безопасность макросов в современных версиях Excel (2007 и более новых)

Чтобы запустить макрос в современных версиях Excel, файл должен быть сохранён как Книга Excel с поддержкой макросов. Открывая такой файл, по его расширению xlsm Excel понимает, что в данной рабочей книге содержатся макросы (в отличие от файла со стандартным расширением xlsx).

Поэтому, чтобы иметь возможность запускать созданный в обычной рабочей книге Excel макрос всегда и везде, нужно сохранить её с расширением xlsm. Для этого на вкладке Файл (File) нажмите Сохранить как (Save as) и в поле Тип файла (Save as type) выберите Книга Excel с поддержкой макросов (Excel Macro-Enabled Workbook).

Отличие в типе файлов ясно указывает на то, что рабочая книга содержит макросы, и это уже становится первым важным шагом к соблюдению мер безопасности. Помимо этого, в Excel существует несколько режимов безопасности макросов, выбрать один их которых можно в меню параметров приложения. Вот эти режимы:

  1. Отключить все макросы без уведомления (Disable all macros without notification)

    Запрет на выполнение любых макросов. При открытии книги Excel не уведомляет о том, что эта книга содержит макросы, поэтому пользователь может не понять причину, по которой книга Excel не работает так, как должна.

  2. Отключить все макросы с уведомлением (Disable all macros with notification)

    Запрет на выполнение макросов. Однако, если в рабочей книге есть макрос, появится предупреждение о том, что макрос присутствует, но отключен.

  3. Отключить все макросы без цифровых подписей (Disable all macros except digitally signed macros)

    Разрешено выполнение макросов только из доверенных источников. Все прочие макросы выполняться не будут. При открытии книги Excel не уведомляет о том, что эта книга содержит макросы, поэтому пользователь может не понять причину, по которой книга Excel не работает так, как должна.

  4. Включить все макросы (Enable all macros)

    Разрешено выполнение всех макросов. При открытии книги Excel не появляется уведомление о том, что в ней содержатся макросы. Соответственно пользователь может не знать, что какой-либо макрос выполняется, пока открыт файл.

Вариант Отключить все макросы с уведомлением — позволяет при открытии файла сделать выбор: разрешить запуск макросов или отключить их. При этом вверху листа появляется жёлтая полоса с уведомлением и кнопкой, как показано на рисунке ниже:

Безопасность макросов Excel

Чтобы разрешить выполнение макросов нужно просто кликнуть по кнопке Включить содержимое (Enable Content).

Где найти параметры безопасности макросов в Excel

Вот как можно просматривать или изменять параметры безопасности макросов в Excel 2007, 2010 или 2013:

Excel 2007

  • Откройте главное меню Excel, для этого кликните по большой круглой кнопке Office в левом верхнем углу. Далее нажмите Параметры Excel (Excel Options).
  • В появившемся диалоговом окне выберите Центр управления безопасностью (Trust Center) и нажмите кнопку Параметры центра управления безопасностью (Trust Center Settings).
  • В разделе Параметры макросов (Macro Settings) выберите нужный параметр и нажмите ОК.

Excel 2010 или 2013

  • На вкладке Файл (File) нажмите Параметры (Options).
  • В открывшемся диалоговом окне выберите Центр управления безопасностью (Trust Center) и нажмите кнопку Параметры центра управления безопасностью (Trust Center Settings).
  • В разделе Параметры макросов (Macro Settings) выберите нужный параметр и нажмите ОК.

Замечание: Потребуется перезапустить Excel, чтобы новые настройки безопасности макросов вступили в силу.

Excel 2007, 2010 и 2013 позволяет объявить выбранные папки на жёстком диске компьютера как надёжные расположения. При открытии файлов, хранящихся в таких расположениях, Excel не выполняет стандартную проверку безопасности макросов. Другими словами, если поместить файл Excel в папку, которая объявлена надёжной, то при открытии этого файла все макросы, записанные в нём, будут запущены независимо от состояния параметров безопасности.

Microsoft по умолчанию присваивает некоторым расположениям статус надёжных, их список хранится в разделе параметров безопасности Excel. Открыть список надёжных расположений можно так:

Excel 2007

  • Откройте главное меню Excel, для этого кликните по большой круглой кнопке Office в левом верхнем углу. Далее нажмите Параметры Excel (Excel Options).
  • В появившемся диалоговом окне выберите Центр управления безопасностью (Trust Center) и нажмите кнопку Параметры центра управления безопасностью (Trust Center Settings).
  • В меню слева нажмите Надёжные расположения (Trusted Locations).

Excel 2010 или 2013

  • На вкладке Файл (File) нажмите Параметры (Options).
  • В открывшемся диалоговом окне выберите Центр управления безопасностью (Trust Center) и нажмите кнопку Параметры центра управления безопасностью (Trust Center Settings).
  • В меню слева нажмите Надёжные расположения (Trusted Locations).

Если нужно сохранить книгу Excel в другом расположении и по-прежнему разрешать выполнение макросов, то можно добавить выбранную папку в список надёжных расположений. Это делается так:

  • В разделе Надёжные расположения (Trusted Locations) нажмите кнопку Добавить новое расположение (Add new location).
  • Выберите папку, которую нужно объявить надёжным расположением и нажмите ОК.

Предупреждение: Не рекомендуется добавлять в список надёжных расположений большие разделы жёсткого диска, например, целиком папку Мои документы (My Documents), так как при этом значительно возрастает риск выполнения макроса, полученного из ненадёжного источника.

В Microsoft Office 2003 существует 4 уровня безопасности макросов, управлять которыми можно в меню Excel. К ним относятся:

  1. Высокая / Очень высокая

    Эти два уровня разрешают запуск макросов только из надёжных источников. Все прочие макросы не будут запущены. При открытии книги Excel не уведомляет о том, что эта книга содержит макросы, поэтому пользователь может не понять причину, по которой книга Excel не работает так, как должна.

  2. Средняя

    Если в книге присутствуют макросы, то при открытии книги появится окно уведомления с вопросом, следует ли эти макросы запускать.

  3. Низкая

    Все макросы выполняются. При открытии книги Excel не появляется уведомление о том, что в ней содержатся макросы. Соответственно пользователь может не знать, что какой-либо макрос выполняется, пока открыт файл.

Если хотите запустить макрос в Excel 2003, то безопасность макросов должна быть выбрана Низкая (Low) или Средняя (Medium).

Чтобы открыть и настроить параметры безопасности макросов в Excel 2003, нужно:

  • Открыть меню Сервис > Макрос > Безопасность (Tools > Macro > Security):

    Безопасность макросов Excel

  • Установить нужный уровень безопасности и нажать ОК.

Чтобы новые настройки безопасности макросов вступили в силу, потребуется перезапустить Excel.

Урок подготовлен для Вас командой сайта office-guru.ru Источник: http://www.excelfunctions.net/Excel-Macro-Security.html Перевел: Андрей Антонов Правила перепечатки Еще больше уроков по Microsoft Excel

Понравилась статья? Поделить с друзьями:
  • Почему лучше excel чем
  • Почему линия тренда не активна в excel
  • Почему копирует в word иероглифы
  • Почему компьютер не открывает файлы word
  • Почему компьютер не открывает документы word