Excel не удается выполнить макрос возможно этот макрос отсутствует в текущей книге

 

sgeleta

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

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

Получил файл на тест работы макроса.
Пытаюсь открыть его. Но выдает ошибку: Возможно этот макрос отсутствует в текущей книги либо все макросы отключены.
Но макросы включены…
Как быть?

 

Karataev

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

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

После открытия файла, вверху есть желтая панель с кнопкой «Включить содержимое»? С помощью этой кнопки Вы разрешите запуск макросов, которые находятся в этом файле.

 

sgeleta

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

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

В свойствах все макросы включены. Но при этом не работает

 

Karataev

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

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

sgeleta, переназначьте макрос — щелкните по кнопке правой кнопкой мыши — Назначить макрос — выберите макрос. Стало работать?

 

Alemox

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

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

Если вы сидите под урезанным пользователем, то-бишь вы не можете работать в режиме админа (устанавливать или удалять программы так как требует ввести пароль и прочее). и если у вас стоит точка включить все макросы, то это не значит что всегда макросы будут работать. Я так тоже пару раз напоролся, в режиме урезанного пользователя не все макросы запускаются и работают с включенной этой точечкой. Поставьте в режим Отключить все макросы с уведомлением. И потом по жёлтенькой панельке включайте макросы. Только сначала выйдите и зайдите в документ.
Тоже самое касается элементов ActiveX. Вторую снизу ставьте.

Изменено: Alemox19.09.2017 11:01:15

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

sgeleta

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

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

Karataev, Спасибо за идею… Но опять ничего…Заколдованый

 

sgeleta

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

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

Alemox,Все сделал как Вы сказали… И опять ничего.

 

Alemox

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

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

Может ребутнуться? Возможно что-то сглючило.

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

Karataev

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

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

sgeleta, а компьютер Ваш или Вы на работе и у Вас там действительно права регулируются?
Может быть перезагрузить компьютер.

 

sgeleta

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

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

Karataev, Комп домашний. поэтому права не регулируются админом. Комп перегрузил как Вы сказали и ничего…..

 

sgeleta

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

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

Возможно нужно найти бесплатный Excel 2010 и поставить на комп. Тогда возможно проблема решиться

 

vikttur

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

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

Нет таких :)
А если есть — обсуждения на этом форуме запрещены.

 

sgeleta

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

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

поставил Excel 2007 — не работает. Та же ошибка.
У меня же официальный Excel 2016 и не работают макросы…

 

Alemox

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

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

Может у вас какой-нибудь антивируник блокирует, или программа какая есть, которая следит за выполнение различных скриптов. У вас случаем не Линукс через эмулятор?

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

sgeleta

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

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

Alemox,Windows 10
Думаю, что связано с компом.
Ведь поставил Excel 7 — и таже проблема
Возможна блокировка антивирусом?

Изменено: sgeleta19.09.2017 16:35:23

 

vikttur

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

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

Отключите и проверьте. Хотя в случае блокировки антивирусник ругался бы.

 

smaiks

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

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

у вас определенно макросы отключены. Файл — параметры — центр управления безопасностью — параметры центра управления — параметры макросов (включить все макросы) + параметры activeX включите на всякий случай.

 

vikttur

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

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

#18

19.09.2017 17:06:37

smaiks, в заглавном сообщении:

Цитата
sgeleta написал: Но макросы включены…

Да и в сообщениях ниже написано, что некотоорые макросы работают.

 

sgeleta

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

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

всё включено, но не работает

Прикрепленные файлы

  • 11.gif (39.28 КБ)

 

_Igor_61

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

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

Здравствуйте! Днем смотрел этот файл на рабочем компе (Win XP, Excel 2007), при нажатии на кнопку выскакивало MsgBox «Макросы включены» или что-то типа этого сообщения (дословно не помню). Сейчас дома: Win7 Excel 2007 — при открытии файла и последующем включении макросов Excel закрывается («Прекращена работа программы…» и т.д.). Открываю с отключенными макросами, пытаюсь открыть редактор VBA через «Разработчик» — такая же история.

 

sgeleta

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

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

_Igor_61,Я открыл нормально этот файл на старом ноутбуке с Excel 2010
А на компе, где стоит Win 10 и абсолютно легальный Excel 2016 — не работает…

 

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

Всё сложное — не нужно. Всё нужное — просто /М. Т. Калашников/

 

sgeleta

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

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

«У меня отрабатывает нормально нажатие кнопочки в Вашем файле.
Попробуйте в этом файле включить макрорекордер и записать какое-н. действие.»

Хорошая идея. Я взял новый файл и по уроку Николая Павлова (

https://www.youtube.com/watch?v=_3OLOaoY6H4

)
попробовал создать макрос.

Все получилось… Теперь вообще не понимаю. в чем дело….

 

Murlif

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

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

Дамы и Господа, добрый день.

Тоже столкнулись с такой проблемой. В 2013 офисе все работает (в нем же написан макрос). На 2010 выдает сообщение «не удается выполнить макрос возможно этот макрос отсутствует». Копание в центре безопасности не помогло. В редакторе VBA на ПК с 2010 офисом часть кодов почему-то отображается «квакозяброй» вместо нормального текста. Может быть проблема с шрифтами?

 

sokol92

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

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

#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" но не сработало.

4b9b3361

Ответ 1

Если у вас есть пробел в названии книги, вы должны использовать одинарные кавычки (‘) вокруг имени файла. Я также удалил полную остановку.

Application.Run "'Python solution macro.xlsm'!PreparetheTables"

Ответ 2

В Microsoft KB попробуйте разрешить программный доступ к проекту Visual Basic:

  1. Нажмите кнопку Microsoft Office, а затем нажмите Параметры Excel.
  2. Нажмите Траст-центр.
  3. Нажмите Настройки центра управления безопасностью.
  4. Нажмите Настройки макроса.
  5. Нажмите, чтобы установить флажок Доверительный доступ к объектной модели проекта VBA.
  6. Нажмите кнопку ОК, чтобы закрыть диалоговое окно «Параметры Excel».
  7. Возможно, вам придется закрыть и снова открыть 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's user avatar

TylerH

20.6k64 gold badges76 silver badges97 bronze badges

asked Aug 22, 2013 at 19:47

Ege Ozlem's user avatar

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

ChipsLetten's user avatar

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 Sagmon's user avatar

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's user avatar

HackSlash

4,6732 gold badges19 silver badges42 bronze badges

answered May 11, 2018 at 13:39

Heap of Pinto Beans's user avatar

0

Per Microsoft’s KB, try allowing programmatic access to the Visual Basic project:

  1. Click the Microsoft Office Button, and then click Excel Options.
  2. Click Trust Center.
  3. Click Trust Center Settings.
  4. Click Macro Settings.
  5. Click to select the Trust access to the VBA project object model check box.
  6. Click OK to close the Excel Options dialog box.
  7. You may need to close and re-open excel.

Jess's user avatar

Jess

23.3k20 gold badges125 silver badges144 bronze badges

answered Jan 17, 2014 at 0:42

Ved Rai's user avatar

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

Vignesh's user avatar

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 Liapin's user avatar

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.

pgSystemTester's user avatar

answered Sep 1, 2017 at 11:13

JovialJohn's user avatar

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 Casey's user avatar

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")

pgSystemTester's user avatar

answered Aug 3, 2017 at 20:58

Matt R.'s user avatar

Delete your name macro and build again.
I did this, and the macro worked.

Michael Petrotta's user avatar

answered Oct 5, 2013 at 23:50

Dhitta Hananda's user avatar

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

Doylet's user avatar

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

elano7's user avatar

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

Jeff Robson's user avatar

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

Philip Swannell's user avatar

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

ernesthm's user avatar

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

Marcin Janowski's user avatar

Запуск макроса из другой книги

fairylive

Дата: Среда, 13.07.2016, 17:08 |
Сообщение № 1

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 122


Репутация:

4

±

Замечаний:
0% ±


Excel 2016

Полдня никак не могу победить проблему.
Есть макрос (назовём его макрос1) в книге1, который в какой-то момент должен открыть файл книга2 и вызвать в нём другой макрос (макрос2).
Файл открывается. В него запихиваются нужные значение. Затем должен выполниться макрос2.
[vba]

Код

Call Application.Run(«книга2.xls!макрос2»)

[/vba]
Макрос2 находится в модуле. Процедур в этом модуле хренова куча и других модулей в файле книга2 тоже. Но макрос2 запускает сначала процедуру которую я назначил Public.
Тем не менее высвечивается ошибка Run-Time erroor ‘1004’: Не удаётся выполнить макрос «Книга2.xls!макрос2». Возможно, этот макрос отсутствует в текущей книге либо все макросы отключены.

 

Ответить

_Boroda_

Дата: Среда, 13.07.2016, 17:18 |
Сообщение № 2

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

А так?
[vba]

Код

Sub Макрос1()
    Application.Run («Книга111.xlsm!Module1.tt»)
End Sub

[/vba]
и так
[vba]

Код

Call Application.Run(«Книга111.xlsm!Module1.tt»)

[/vba]
и так
[vba]

Код

Run(«Книга111.xlsm!Module1.tt»)

[/vba]


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

fairylive

Дата: Среда, 13.07.2016, 17:34 |
Сообщение № 3

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 122


Репутация:

4

±

Замечаний:
0% ±


Excel 2016

_Boroda_, Сдвинулся с мёртвой точки так:
[vba]

Код

Call Application.Run(макрос2)

[/vba]
Сработало видимо потому что файл книга2 уже открыт.

Но теперь другая проблема. Этот макрос2 не отрабатывает как надо. Хотя если нажимать кнопку на котором висит этот макрос то файл обрабатывается с теми новыми данными из файла книга1.

Расширение файла книга2 XLS это старый файл экселя с макросами.

Сообщение отредактировал fairyliveСреда, 13.07.2016, 17:34

 

Ответить

_Boroda_

Дата: Среда, 13.07.2016, 17:55 |
Сообщение № 4

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Сдвинулся с мёртвой точки так:

Неправильно сдвинулись. Макросов «макрос2» может быть много — в разных книгах и даже в разных модулях одной книги. Нужно указывать книгу и модуль.
Кстати, у Вас в текущей книге случайно нет ли макроса с именем «макрос2»?
И еще — гнетут меня смутные сомнения, что в том макросе «макрос2», который нужен, на прописана книга, в которой тот должен работать (типа имя книги, ThisWorkbook или ActiveWorkbook). Возможно, лист тоже не прописан. Тогда макрос будет отрабатывать на текущем листе текущей книги, а не там, где Вам нужно


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

fairylive

Дата: Среда, 13.07.2016, 18:29 |
Сообщение № 5

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 122


Репутация:

4

±

Замечаний:
0% ±


Excel 2016

Макрос2 имеет уникальное имя. Повториться не может. Это я его здесь на форуме так обозвал для наглядности. Вообще он в той книге Книга2 имеет имя на русском языке. Может дело в этом?

По поводу активации и thisbook. Вот так это выглядит в моём макросе Макрос1(имя тоже другое уникальное)

[vba]

Код

With Workbooks(«книга2.xls»).Worksheets(«лист3»)
    .Activate
    Call Application.Run(макрос2)
    Application.Wait Time:=Now + TimeSerial(0, 0, 1)
    End With

[/vba]

UPD. Подправил Книга1 на Книга2.

Сообщение отредактировал fairyliveСреда, 13.07.2016, 21:03

 

Ответить

_Boroda_

Дата: Среда, 13.07.2016, 19:41 |
Сообщение № 6

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Причем здесь Ваш макрос1? Я про Макрос 2 Вам говорю

в том макросе «макрос2», который нужен

И вообще — давайте не будем без кода макроса в угадайку играть?


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

RAN

Дата: Среда, 13.07.2016, 20:16 |
Сообщение № 7

Группа: Друзья

Ранг: Экселист

Сообщений: 5645

И вообще — давайте не будем без кода макроса в угадайку играть?

Незачем было и начинать. B)


Быть или не быть, вот в чем загвоздка!

 

Ответить

fairylive

Дата: Среда, 13.07.2016, 21:02 |
Сообщение № 8

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 122


Репутация:

4

±

Замечаний:
0% ±


Excel 2016

Тот файл Книга2 написан не мой. Кода там несколько сотен страниц. Вникать как там что устроено нет ни возможности ни желания. Думаю что ни вам ни мне. Но он работает и это главное. Единственное что написан он очень давно. Когда ещё не было расширений XLSM. Сохранён он в формате XLS. И только в таком виде он может существовать. При попытке сохранить в другом формате (xlsm) макрос перестаёт работать.

Мне надо просто открывать этот файл, запихивать туда данные и запускать макрос на обработку этих данных. С первыми двумя пунктами проблем нет. А вот макрос почему-то не подцепляется.

Коды пока выложить не могу. Мой который я пишу ещё очень сыроват.

 

Ответить

Manyasha

Дата: Среда, 13.07.2016, 21:22 |
Сообщение № 9

Группа: Модераторы

Ранг: Старожил

Сообщений: 2198


Репутация:

898

±

Замечаний:
0% ±


Excel 2010, 2016

макрос почему-то не подцепляется

у меня работают все предложенные Александром варианты. Да и Ваш тоже работает.
Не работает, если в имени файла есть пробелы, тогда нужно так:
[vba]

Код

Application.Run «‘123 1.xls’!макрос2»  ‘с апострофами

[/vba]


ЯД: 410013299366744 WM: R193491431804

 

Ответить

fairylive

Дата: Среда, 13.07.2016, 21:35 |
Сообщение № 10

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 122


Репутация:

4

±

Замечаний:
0% ±


Excel 2016

Manyasha, так вот зачем эти апострофы))) Но всё же нет. Имя файла в одно слово.
Я в предыдущем сообщении возможно не верно выразился на счет того что макрос не подцепляется. По началу было сообщение с ошибкой что макрос не удаётся выполнить или найти. Потом это сообщение пропало и вроде бы как макрос запускается. На это указывает тот момент что в экселе в файле книга2 меняется лист (он менялся как раз после выполнения макроса2). Но лист пустой. Нет результата сейчас.

 

Ответить

RAN

Дата: Среда, 13.07.2016, 21:44 |
Сообщение № 11

Группа: Друзья

Ранг: Экселист

Сообщений: 5645

Элементарная проверка
[vba]

Код

Sub Макрос2()
    msgbox «макрос2 запущен»
……………
    msgbox «макрос2 отработал»
End Sub

[/vba]


Быть или не быть, вот в чем загвоздка!

 

Ответить

fairylive

Дата: Среда, 13.07.2016, 22:24 |
Сообщение № 12

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 122


Репутация:

4

±

Замечаний:
0% ±


Excel 2016

Вот файлы с кодами. Проблема таже что была и в первом сообщении. Макрос не запускается или не находится. Ниже мой код из файла подцеп раскроя:
[vba]

Код

Sub podcep()

Dim a As Double
Dim b As Double
Dim raskroy_bk As Workbook
Dim pathfile As String

pathfile = ThisWorkbook.Path & «»

a = 890
b = 130

Set raskroy_bk = Workbooks.Open(pathfile & «раскрой.xls»)

With Workbooks(«раскрой.xls»).Worksheets(«Разблюдовка»)
.Activate
.Range(«C4»).Value = a
.Range(«D4»).Value = b

Call Application.Run(«‘раскрой.xls’!АвтоРаскрой»)

End With

End Sub

[/vba]

Ссылка на второй файл в облаке https://cloud.mail.ru/public/8BZd/6GKqNwDPa

PS файлы надо распаковать в одну папку.

К сообщению приложен файл:

0145117.xlsm
(16.1 Kb)

Сообщение отредактировал fairyliveСреда, 13.07.2016, 22:28

 

Ответить

RAN

Дата: Среда, 13.07.2016, 23:05 |
Сообщение № 13

Группа: Друзья

Ранг: Экселист

Сообщений: 5645

[vba]

Код

Call Application.Run(«‘раскрой.xls’!АвтоРаскрой.АвтоРаскрой»)

[/vba]
Запудрили бедному VBA мозги, он и чешет репу, что ему искать, то-ли модуль, то-ли процедуру. ;)


Быть или не быть, вот в чем загвоздка!

 

Ответить

fairylive

Дата: Четверг, 14.07.2016, 13:27 |
Сообщение № 14

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 122


Репутация:

4

±

Замечаний:
0% ±


Excel 2016

RAN, спасибо! Всё заработало. Я думал над тем что надо указать имя модуля. Но оно совпадало с именем процедуры…

 

Ответить

_Boroda_

Дата: Четверг, 14.07.2016, 14:03 |
Сообщение № 15

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Я думал над тем что надо указать имя модуля

Не, ну нормально? Я Вам разве не об этом с самого начала писал? Во втором посте кодом

Application.Run («Книга111.xlsm!Module1.tt»)

В четвертом посте словами

Нужно указывать книгу и модуль


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

fairylive

Дата: Четверг, 14.07.2016, 17:21 |
Сообщение № 16

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 122


Репутация:

4

±

Замечаний:
0% ±


Excel 2016

_Boroda_, виноват-с, невнимательность моя. Теперь вижу что tt это имя процедуры в модуле module1. До этого думал может это какое-то расширение модуля внутри файла xlsx…

 

Ответить

  • 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


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

Модераторы: mihanik

Поиск:

Ответ в темуСоздание новой темы
Создание опроса
> Макрос в excel, Не удается выполнить макрос 

:(

   

Опции темы

oleksergey
Дата 8.4.2011, 17:14 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Новичок

Профиль
Группа: Участник
Сообщений: 13
Регистрация: 26.11.2007

Репутация: нет
Всего: нет

Всем привет.
Есть документ excel, в нем создаю макрос на редактирование данных в ячейках. И добавляю кнопку на панель быстрого доступа. Все нормально работает.
Проблемма возникает тогда когда копирую этот документ в другую, скажем деректорию. В этом случае при попытке запустить макрос с панели быстрого доступа выдается сообщение Не удается выполнить макрос «имя макроса» возможно этот макрос отсутствует в текущей книге, либо все макросы отключены.
В чем проблема? Кто сталкивался или знает что делать?

ОС Vista, Excel 2010.

Заранее спасибо.

PM MAIL   Вверх
dorogoyIV
Дата 8.4.2011, 22:06 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Эксперт
***

Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

Репутация: 4
Всего: 46

вот ты скопировал в другую директорию…
открываешь файл Excel из этой новой директории, открываешь макросы, … — там есть твой макрос?

PS:
у меня была такая же заморочка с OOo… 
пока до меня не дошло, что надо сохранять в формате *.ods
вообще то не знаю как в MS Office 2010, не видел его ни разу smile

PM MAIL   Вверх
aclips
Дата 9.4.2011, 14:22 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Новичок

Профиль
Группа: Участник
Сообщений: 49
Регистрация: 1.6.2008

Репутация: нет
Всего: нет

dorogoyIV,  в 10 то же самое)

PM MAIL   Вверх
CaptainNemo
Дата 17.4.2011, 03:56 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Опытный
**

Профиль
Группа: Участник
Сообщений: 283
Регистрация: 5.6.2008
Где: White Russia, Min sk

Репутация: 2
Всего: 9

oleksergey, уж давно не сталкивался с VBA. Почитал твой пост, и решил вспомнить всё)) Короче, ты когда макрос записываешь, он по умолчанию сохраняется в этой же книге. Естественно, из других директорий макрос не видим. 

А теперь попробуй записать новый макрос, и когда появиться диалоговое окно «Запись макроса» выбирай из выпадающего списка «Сохранить в…» — «Личная книга макросов». Как только хоть один макрос так сделаешь дык тогда жми Ctrl+F11. Сразу увидишь, что в Project Explorere появилась «Personal.XLSB». В модули этой книги копируй всё то, что нужно сделать доступным в пределах данной машины…  smile

PM MAIL WWW ICQ Skype GTalk   Вверх



















Ответ в темуСоздание новой темы
Создание опроса
Правила форума «Программирование, связанное с MS Office»

mihanik

staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

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


  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль «Помогите!» таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в

    «Книге отзывов о работе администрации»

  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!

С уважением
mihanik и
staruha.

 

0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »

Like this post? Please share to your friends:
  • Excel не убирать нули перед числом
  • Excel не убирать ведущие нули
  • Excel не убирать 0 в начале
  • Excel не убирается область печати
  • Excel не убирается заливка ячейки