sgeleta Пользователь Сообщений: 75 |
Получил файл на тест работы макроса. |
Karataev Пользователь Сообщений: 2306 |
После открытия файла, вверху есть желтая панель с кнопкой «Включить содержимое»? С помощью этой кнопки Вы разрешите запуск макросов, которые находятся в этом файле. |
sgeleta Пользователь Сообщений: 75 |
В свойствах все макросы включены. Но при этом не работает |
Karataev Пользователь Сообщений: 2306 |
sgeleta, переназначьте макрос — щелкните по кнопке правой кнопкой мыши — Назначить макрос — выберите макрос. Стало работать? |
Alemox Пользователь Сообщений: 2183 |
Если вы сидите под урезанным пользователем, то-бишь вы не можете работать в режиме админа (устанавливать или удалять программы так как требует ввести пароль и прочее). и если у вас стоит точка включить все макросы, то это не значит что всегда макросы будут работать. Я так тоже пару раз напоролся, в режиме урезанного пользователя не все макросы запускаются и работают с включенной этой точечкой. Поставьте в режим Отключить все макросы с уведомлением. И потом по жёлтенькой панельке включайте макросы. Только сначала выйдите и зайдите в документ. Изменено: Alemox — 19.09.2017 11:01:15 Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. |
sgeleta Пользователь Сообщений: 75 |
Karataev, Спасибо за идею… Но опять ничего…Заколдованый |
sgeleta Пользователь Сообщений: 75 |
Alemox,Все сделал как Вы сказали… И опять ничего. |
Alemox Пользователь Сообщений: 2183 |
Может ребутнуться? Возможно что-то сглючило. Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. |
Karataev Пользователь Сообщений: 2306 |
sgeleta, а компьютер Ваш или Вы на работе и у Вас там действительно права регулируются? |
sgeleta Пользователь Сообщений: 75 |
Karataev, Комп домашний. поэтому права не регулируются админом. Комп перегрузил как Вы сказали и ничего….. |
sgeleta Пользователь Сообщений: 75 |
Возможно нужно найти бесплатный Excel 2010 и поставить на комп. Тогда возможно проблема решиться |
vikttur Пользователь Сообщений: 47199 |
Нет таких |
sgeleta Пользователь Сообщений: 75 |
поставил Excel 2007 — не работает. Та же ошибка. |
Alemox Пользователь Сообщений: 2183 |
Может у вас какой-нибудь антивируник блокирует, или программа какая есть, которая следит за выполнение различных скриптов. У вас случаем не Линукс через эмулятор? Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. |
sgeleta Пользователь Сообщений: 75 |
Alemox,Windows 10 Изменено: sgeleta — 19.09.2017 16:35:23 |
vikttur Пользователь Сообщений: 47199 |
Отключите и проверьте. Хотя в случае блокировки антивирусник ругался бы. |
smaiks Пользователь Сообщений: 3 |
у вас определенно макросы отключены. Файл — параметры — центр управления безопасностью — параметры центра управления — параметры макросов (включить все макросы) + параметры activeX включите на всякий случай. |
vikttur Пользователь Сообщений: 47199 |
#18 19.09.2017 17:06:37 smaiks, в заглавном сообщении:
Да и в сообщениях ниже написано, что некотоорые макросы работают. |
||
sgeleta Пользователь Сообщений: 75 |
всё включено, но не работает Прикрепленные файлы
|
_Igor_61 Пользователь Сообщений: 3007 |
Здравствуйте! Днем смотрел этот файл на рабочем компе (Win XP, Excel 2007), при нажатии на кнопку выскакивало MsgBox «Макросы включены» или что-то типа этого сообщения (дословно не помню). Сейчас дома: Win7 Excel 2007 — при открытии файла и последующем включении макросов Excel закрывается («Прекращена работа программы…» и т.д.). Открываю с отключенными макросами, пытаюсь открыть редактор VBA через «Разработчик» — такая же история. |
sgeleta Пользователь Сообщений: 75 |
_Igor_61,Я открыл нормально этот файл на старом ноутбуке с Excel 2010 |
У меня отрабатывает нормально нажатие кнопочки в Вашем файле. Всё сложное — не нужно. Всё нужное — просто /М. Т. Калашников/ |
|
sgeleta Пользователь Сообщений: 75 |
«У меня отрабатывает нормально нажатие кнопочки в Вашем файле. Хорошая идея. Я взял новый файл и по уроку Николая Павлова ( https://www.youtube.com/watch?v=_3OLOaoY6H4 ) Все получилось… Теперь вообще не понимаю. в чем дело…. |
Murlif Пользователь Сообщений: 36 |
Дамы и Господа, добрый день. Тоже столкнулись с такой проблемой. В 2013 офисе все работает (в нем же написан макрос). На 2010 выдает сообщение «не удается выполнить макрос возможно этот макрос отсутствует». Копание в центре безопасности не помогло. В редакторе VBA на ПК с 2010 офисом часть кодов почему-то отображается «квакозяброй» вместо нормального текста. Может быть проблема с шрифтами? |
sokol92 Пользователь Сообщений: 4445 |
#26 02.02.2021 13:09:23 Выложите проблемный файл. Владимир |
Я пытаюсь вызвать подпрограмму на другом листе, но я получил сообщение об ошибке во время выполнения.
В частности, у меня есть две таблицы и несколько сабвуферов VBA в этих таблицах. В одном из проектов VBA (скажем, workbook1.xlsm) у меня есть следующий код:
Sub AnalysisTableMacro()
Workbooks("Python solution macro.xlsm").Activate
Application.Run "Python solution macro.xlsm!.PreparetheTables"
End Sub
Но я получил следующую ошибку. Макросы на обоих листах включены. В обеих таблицах сабвуферы находятся в Модуле1.
Не удается запустить макрос «Workbook.xlsm! PrepareTheTables». Макрос может быть недоступен в> этой книге или все макросы могут быть отключены.
Я также попробовал Application.Run "Python solution macro.xlsm!Module1.PreparetheTables"
но не сработало.
Ответ 1
Если у вас есть пробел в названии книги, вы должны использовать одинарные кавычки (‘) вокруг имени файла. Я также удалил полную остановку.
Application.Run "'Python solution macro.xlsm'!PreparetheTables"
Ответ 2
В Microsoft KB попробуйте разрешить программный доступ к проекту Visual Basic:
- Нажмите кнопку Microsoft Office, а затем нажмите Параметры Excel.
- Нажмите Траст-центр.
- Нажмите Настройки центра управления безопасностью.
- Нажмите Настройки макроса.
- Нажмите, чтобы установить флажок Доверительный доступ к объектной модели проекта VBA.
- Нажмите кнопку ОК, чтобы закрыть диалоговое окно «Параметры Excel».
- Возможно, вам придется закрыть и снова открыть Excel.
Ответ 3
Имел ту же проблему, и я «Скомпилировал проект VBA», который выявил ошибку. После коррекции и компиляции макросы работали.
Ответ 4
Вы также сталкиваетесь с этой проблемой при создании процедуры в модуле класса.
Когда вы пытаетесь запустить код извне, вы получаете эту ошибку.
Вы также не можете назначить макрос кнопке члену модуля класса.
Если вы попытаетесь запустить из кода, нажав зеленую кнопку воспроизведения, вы также увидите ту же ошибку.
Либо переместите подпрограмму в обычный модуль, либо создайте новую процедуру в регулярном модуле, который вызывает член класса.
Ответ 5
У меня также была проблема с этой ошибкой, оказалось, что имя файла вызывает проблему.
Я называл это следующим образом:
Application.Run «и strPath и strFName и»!! UPC.PrintaFew «
Переменная strFName содержала в себе апостроф, который, конечно же, перепутал вещи. Мне потребовалось несколько часов, чтобы понять это. Но как только апостроф был удален из имени файла, он сработал.
Ответ 6
Эта ошибка появляется при открытии макроса, который последний раз сохранен с синтаксической ошибкой.
Сообщение, хотя и будет ссылаться на макрос, который вызывает ошибочный суб или функцию. Чтобы решить эту проблему, я обычно пытаюсь выполнить отдельные отредактированные макросы отдельно.
Ответ 7
В моем случае эта ошибка возникла, когда имя Sub было идентично имени модуля.
Ответ 8
Удалите макрос имени и снова создайте его.
Я сделал это, и макрос работал.
Ответ 9
Наиболее вероятной причиной этой ошибки является то, что функция безопасности в Excel VBA, которая не позволяет запускать код VBA. Пользователь должен явно предоставить разрешение на запуск макросов excel вместе с книгой.
Этот может или не может требовать программный доступ к проекту Visual Basic.
Для меня эта ошибка была решена: —
-
Включить редактирование и включение содержимого
- Изменение настроек макроса без программного доступа
Шаги и детали -
Изменение параметров макроса вместе с программными
доступ ( не рекомендуется, если какой-либо из вышеперечисленных процессов работает.
Это позволило бы управлять кодом для изменения элементов в VBA
Сам проект, включая ссылки и сам код — Ссылка)Шаги здесь
Ответ 10
У меня была такая же проблема, как и у OP, и это было вызвано тем, что объявление опций было написано с ошибкой:
' Comment comment
Options Explicit
Sub someMacroMakechart()
в дополнительном модуле вместо правильного;
' Comment comment
Option Explicit
Sub someMacroMakechart()
Ответ 11
Сохранить как .xlsm(Excel Macro-Enabled Workbook).
Ответ 12
В моем случае это было связано с тем, что публичная процедура в другом модуле и частная процедура в вызывающем модуле с тем же именем. VBA не различает эти два и, следовательно, дает тупые ошибки.
Ответ 13
Мне пришлось удалить все тире и символы подчеркивания из имен файлов и имен макросов, убедиться, что макрос включен и добавить их имя модуля .macro
Вот что я закончил: Application.Run( «‘» и WbName и «‘» и «! ModuleName.MacroName» )
Ответ 14
У меня была такая же проблема, и мне потребовалось время, чтобы разобраться. Моя цель состояла в том, чтобы вызвать код в отдельной книге. У меня был целевой объект в листе, а не в модуле. Оказывается, что не может удаленно вызывать суб или функцию, которая не находится в модуле.
Ответ 15
Я недавно столкнулся с этой проблемой и попробовал все вышеперечисленные решения, но в духе. На самом деле проблема в том, что я создаю флажок динамически с помощью Excel vba и назначаю макрос на действие, но когда я нажимаю на флажок, он выдает ошибку выше.
Решение
With Sheets("BACKUP_QUERY")
cbx.OnAction = .CodeName & ".ProcessCheckBox"
End With
Как мне найти решение?
Щелкните правой кнопкой мыши по флажку, а затем назначьте макрос вручную. Затем я проверил это, он работал отлично. Затем я заметил, что excel назначает макрос с использованием кодовых имен листов, а не фактических имен, которые мы установили внизу.
Ответ 16
В моем случае ошибка произошла, когда я поместил свой макрос (public sub) в раздел ThisWorkbook
файла, ожидая, что он сделает его видимым для функции Application.Run
. Это было не так, и я получил ту ошибку, о которой вы упоминали.
Я переместил свой макрос в отдельный модуль, и это решило проблему.
Ответ 17
проверить:
Application.Run "'Python solution macro.xlsm'!ThisWorkbook.PreparetheTables"
используйте имя модуля.
Microsoft® Excel® 2016 MSO (16.0.12228.20322), 64-разрядная версия
Файл :: Надстройки :: Управление: Надстройки Excel :: Перейти :: Поиск решения :: ОК
Запрос включения макросов для файла отсутствует.
При переходе на вкладку «Данные»:
Не удается выполнить макрос ’SOLVER.XLAMlGetGroupLabel’. Возможно, этот макрос отсутствует в текущей книге либо все макросы отключены.
Включил все макросы
Файл :: Параметры :: Центр управления безопасностью :: Параметры центра управления безопасностью :: Параметры макросов :: Включить все макросы :: ОК
Включил ActiveX
Файл :: Параметры :: Центр управления безопасностью :: Параметры центра управления безопасностью :: Параметры ActiveX :: Включить все элементы управления без ограничений и запросов :: ОК
Ничего не помогло, как включить надстройку?
Добавлено через 44 минуты
%AppData%MicrosoftAddIns — пусто
Где оно вообще должно быть и как называется файл? Если его на компе нет — как установить?
Добавлено через 8 минут
Выскакивает при закрытии
Microsoft Visual Basic for Applications
Compile error in hidden module: SolverCode.
I This error commonly occurs when code is incompatible with the version, platform, or architecture of this application. Click ‘Help’ for information on howto correct this error.
Если это оно, то в %ProgramFiles%Microsoft OfficerootOffice16LibrarySOLVER имеется 2 файла:
* SOLVER.XLAM ;
* SOLVER32.DLL ;
I am trying to call a sub on a different worksheet but I got a run time error message.
Specifically, I have two worksheets and multiple VBA sub s in those worksheets. In one of the VBA Project (say workbook1.xlsm), I have the following code:
Sub AnalysisTableMacro()
Workbooks("Python solution macro.xlsm").Activate
Application.Run "Python solution macro.xlsm!.PreparetheTables"
End Sub
But I got the following error. The macros on both worksheets are enabled. In both worksheets, the subs are in Module1.
Cannot run the macro ‘Workbook.xlsm!PrepareTheTables’. The macro may not be available in >this workbook or all macros may be disabled.
I also tried Application.Run "Python solution macro.xlsm!Module1.PreparetheTables"
but did not work.
TylerH
20.6k64 gold badges76 silver badges97 bronze badges
asked Aug 22, 2013 at 19:47
0
If you have a space in the name of the workbook you must use single quotes (‘) around the file name. I have also removed the full stop.
Application.Run "'Python solution macro.xlsm'!PreparetheTables"
answered Mar 7, 2016 at 15:55
ChipsLettenChipsLetten
2,9131 gold badge11 silver badges28 bronze badges
0
In my case this error came up when the Sub name was identical to the Module name.
answered May 25, 2019 at 19:11
Mor SagmonMor Sagmon
8211 gold badge15 silver badges33 bronze badges
1
You also run into this issue when you are creating routine in a class module.
When you try to run the code externally, you get this error.
You can’t assign macro to button to a member of a class module either.
If you try to run from within the code by pressing green play button you will also see the same error.
Either move the routine in to a regular module or create a new routine in a regular module that calls the class member.
HackSlash
4,6732 gold badges19 silver badges42 bronze badges
answered May 11, 2018 at 13:39
0
Per Microsoft’s KB, try allowing programmatic access to the Visual Basic project:
- Click the Microsoft Office Button, and then click Excel Options.
- Click Trust Center.
- Click Trust Center Settings.
- Click Macro Settings.
- Click to select the Trust access to the VBA project object model check box.
- Click OK to close the Excel Options dialog box.
- You may need to close and re-open excel.
Jess
23.3k20 gold badges125 silver badges144 bronze badges
answered Jan 17, 2014 at 0:42
Ved RaiVed Rai
1191 silver badge3 bronze badges
2
Had the same issue and I ‘Compiled VBA Project’ which identified an error. After correction and compiling, the macros worked.
answered Sep 4, 2016 at 3:53
VigneshVignesh
1572 silver badges12 bronze badges
In my case the error happened when I placed my macro (public sub) into a ThisWorkbook
section of the file expecting it will make it visible for Application.Run
function. This was not the case and I got that error you mentioned.
I moved my macro into a separate Module and it resolved the problem.
answered Aug 7, 2019 at 17:55
Peter LiapinPeter Liapin
1,1769 silver badges19 bronze badges
I had a problem with this error as well, turned out the the filename was causing the problem.
I was calling it like this:
Application.Run "'" & strPath & strFName & "'!UPC.PrintaFew"
The variable strFName contained an apostrophe in it which, of course messed things up. Took me hours to figure it out. But once the apostrophe was removed from the filename it worked.
answered Sep 1, 2017 at 11:13
JovialJohnJovialJohn
351 silver badge4 bronze badges
Go into task manager and see if you have any Microsoft Excel Processes running in the background. I closed my excel background processes and my code worked again.
answered Jan 7, 2020 at 18:45
Brennan CaseyBrennan Casey
8772 gold badges7 silver badges17 bronze badges
1
I had to remove all dashes and underscores from file names and macro names, make sure that macro were enabled and add them module name.macro name
This is what I ended up with: Application.Run ("'" & WbName & "'" & "!ModuleName.MacroName")
answered Aug 3, 2017 at 20:58
Delete your name macro and build again.
I did this, and the macro worked.
answered Oct 5, 2013 at 23:50
1
I had the same problem as OP and found was due to the options declaration being misspelled:
' Comment comment
Options Explicit
Sub someMacroMakechart()
in a sub module, instead of correct;
' Comment comment
Option Explicit
Sub someMacroMakechart()
answered Jan 21, 2016 at 5:04
This error also occurs if you create a sub or function in a ‘Microsoft Excel Object’ (like Sheet1, Sheet2, …) instead to create it in a Module.
For example:
you create with VBA a button and set .OnAction = 'btn_action'
. And Sub btn_action
you placed into the Sheet object instead into a Module.
answered Nov 6, 2019 at 18:50
elano7elano7
1,3161 gold badge16 silver badges16 bronze badges
I had the same error message «Cannot find the macro ___ etc» and this problem persisted even after I’d saved the file as an XLSX. This seemed very odd … how could it be running a macro when the file has no macros!
When I examined the file using the Custom UI Editor, I found that a macro was being called when the file was initialized and another custom macro was being called when the user clicked the Save button.
Using the Custom UI Editor, I removed all the XML code and the error messages disappeared.
answered May 20, 2020 at 4:07
In my case, the macro I wished to run was assigned to a button on a worksheet (Forms button as opposed to ActiveX button).
The macro was defined not in the workbook, but in a separate .xlam addin. Clicking the button gave an error: Cannot run the macro 'NameOfMyMacro'. The macro may not be available in this workbook or all macros may be disabled.
None of the answers given here worked for me, but what did work was to make the folder of the workbook a «Trusted Location».
See Ribbon -> File -> Options -> Trust Center -> Trust Center Settings -> Trusted Locations -> Add new Location
answered Jun 18, 2022 at 10:11
In my case it was a security issue that I resolved by unblocking the file in explorer (Properties / Unblock).
answered Nov 1, 2022 at 12:34
ernesthmernesthm
4214 silver badges15 bronze badges
I got this error when a sub was assigned programically using OnAction property. To make it work you need to provide the exact path for example ‘My Workbook.xlsm’!MyMacroScript
.OnAction = "'" & ThisWorkbook.Name & "'!" & "MyMacroScript"
answered 2 days ago
Запуск макроса из другой книги |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
- Remove From My Forums
-
Question
-
При включении надстройки Solver Появляется ряд ошибок:
Не удается выполнить макрос «Solver.Xlam!GetGroupLabel» Возможно
это макрос отсутствует в текущей книге либо все макросы отключеныНе удается выполнить макрос «Solver.Xlam!GetSolverLabel» Возможно
это макрос отсутствует в текущей книге либо все макросы отключеныНе удается выполнить макрос «Solver.Xlam!GetSolverScreentip» Возможно
это макрос отсутствует в текущей книге либо все макросы отключеныНе
удается выполнить макрос «Solver.Xlam!MainEx» Возможно
это макрос отсутствует в текущей книге либо все макросы отключеныКак решить проблему?
Answers
-
Дополните:
-полным названием установленного пакета Office на вашем устройстве;
-какая локализация Операционной Системы и пакета Office;
-пробовали ли Вы выполнить «Восстановление» пакета Office;
-удаляли ли Вы Антивирусную программу на время Восстановление пакета Office.
Внимательно изучите статью
Excel Solver Online Help solverЗагрузите к себе файл-пример, проверьте и напишите результат.
Да, я Жук, три пары лапок и фасеточные глаза :))
-
Marked as answer by
Saturday, September 9, 2017 5:32 AM
-
Edited by
ЖукMVP, Moderator
Thursday, May 9, 2019 6:37 AM
-
Marked as answer by
Форум программистов Vingrad
Модераторы: mihanik |
Поиск: |
|
Макрос в excel, Не удается выполнить макрос |
Опции темы |
oleksergey |
|
||
Новичок Профиль Репутация: нет
|
Всем привет. ОС Vista, Excel 2010. Заранее спасибо. |
||
|
|||
dorogoyIV |
|
||
Эксперт Профиль Репутация: 4
|
вот ты скопировал в другую директорию… PS: |
||
|
|||
aclips |
|
||
Новичок Профиль Репутация: нет
|
dorogoyIV, в 10 то же самое) |
||
|
|||
CaptainNemo |
|
||
Опытный Профиль
Репутация: 2
|
oleksergey, уж давно не сталкивался с VBA. Почитал твой пост, и решил вспомнить всё)) Короче, ты когда макрос записываешь, он по умолчанию сохраняется в этой же книге. Естественно, из других директорий макрос не видим. А теперь попробуй записать новый макрос, и когда появиться диалоговое окно «Запись макроса» выбирай из выпадающего списка «Сохранить в…» — «Личная книга макросов». Как только хоть один макрос так сделаешь дык тогда жми Ctrl+F11. Сразу увидишь, что в Project Explorere появилась «Personal.XLSB». В модули этой книги копируй всё то, что нужно сделать доступным в пределах данной машины… |
||
|
|||
|
Правила форума «Программирование, связанное с MS Office» | |
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми
Если Вам понравилась атмосфера форума, заходите к нам чаще! |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) |
0 Пользователей: |
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема » |