Error 40230 vba excel

I am getting an Unexpected error (40230) when trying to access VBA code for the form I have in Access 2007. I tried decompiling, which is how I found out the project is corrupt. I received the fol...

I am getting an Unexpected error (40230) when trying to access VBA code for the form I have in Access 2007.

I tried decompiling, which is how I found out the project is corrupt. I received the following message when I decompiled:

"The Visual Basic for Applications project in the database is corrupt"

I tried to save the VBA code to a text file the following way:

Application.SaveAsText acForm, "App_Form", "C:Usersjck112DocumentsModule1.txt"

But I get following error:

Run-time error '3021'
No current record.

I also tried importing the form to a new DB, but it didnt allow me. It allows me to import tables, queries from the same DB the form is in, but wont let me select the form, it is disabled.

Also, I have both .accdb and .accde files.

Note: The form functions perfectly fine when used. Button clicks do as expected, so the code behind these buttons work. But I need to make some enhancements to the code.

Is there any way I can retrieve my VBA code? or repair my database?

Any help is much much appreciated

Содержание

  1. Вынужденный обход парольной защиты модуля VBA в Excel 2010
  2. Удаление пароля из проекта VBA
  3. 6 ответов
  4. Unexpected error 40230 excel
  5. Answered by:
  6. Question
  7. Answers
  8. Как исправить ошибку Microsoft Access 40230
  9. Основы «Access Error 40230»
  10. Почему возникает ошибка времени выполнения 40230?
  11. Классические проблемы Access Error 40230
  12. Причины ошибок в файле Access Error 40230

Вынужденный обход парольной защиты модуля VBA в Excel 2010

Здравствуйте, друзья!
Последние дни бился над такой задачей:
Имеется файл .xls, в нем макрос на VBA, защищенный паролем. Файл создается путем экспортирования из программы ГрандСмета и содержит в себе смету, которая должна обрабатываться макросом.
На 32х разрядных версиях — отрабатывает без проблем.

На 64х столкнулся со следующей ошибкой:

Справка Microsoft дает однозначный ответ:

Связывался с Тех.Поддержкой, объяснял причину. Ответ был один:

У нас все работает. Проверяли на 64х разрядных версиях.

Тогда я решился самостоятельно править код макроса. Сложность, с которой столкнулся — модуль защищен паролем. О том, как сбросить/изменить пароль не используя специализированное ПО для взлома пароля
Итак, приступим. Заранее предупрежу — я не профессиональный программист, а скорее ЭниКейщик, так что возможны некорректные формулировки, а кому-то может и вовсе не понравиться выбранный мной путь.
Первым делом я стал бороздить просторы Сети в поисках решения. В основном полным-полно ссылок на ПО, из разряда PasswordCracker. Одно из решений опубликованное на Ru-Board’e полностью удаляло код модуля VBA.
В конце концов, мои старания вознаградились — предлагаю Вам вольный перевод найденного решения (к сожалению не могу указать первоисточник — не помню) + попытка понять суть выявленной «уязвимости».

Думаю, что ни для кого не секрет, что начиная с Excel 2007 использует Microsoft Office Open XML в качестве своего основного формата.

FarManager превосходно открывает xls файл с отображением всей структуры документа.
1. Запускаем FarManager.
2. Открываем файл для редактирования.
3. Ищем строку с определением ключа DPB, и изменяем имя ключа на DPW.
4. Сохраняем.
4. Открываем файл в Excel.
5. Подтверждаем загрузку проекта, не смотря на некорректный ключ (который мы сами и сделали некорректным в п.3):

6. В окнах с сообщениями об ошибке смело жмем ОК.
7. С помощью комбинации Alt+F11 — запускаем VBA Editor и, вуаля, код макроса доступен для редактирования.

Теперь причина возникавшей ошибки при запуске макроса в среде x64 — очевидна!

Компилятор подсказывает о том, что код в данном проекте должен быть обновлен для использования на 64х разрядных системах, конкретно указав, что надо было всего лишь добавить ключевое слово PtrSafe при объявлении функции.

Изменения внес, пересохранил, проверил. Все работает. Порадовал коллег решением наболевшей проблемы + приобрел опыт.

Пытаюсь решить последний вопрос, на котором я и застопорился:
Как вразумительно, и не обидев, объяснить Тех.Поддержке о решении возникшей проблемы с запуском макроса? Не должен же я самостоятельно перелапачивать все шаблоны (а их порядка 50), чтобы макрос корректно отрабатывал на x64 версиях Офиса. К тому же вопрос этики — пришлось «обходить» защиту кода макроса.

Источник

Удаление пароля из проекта VBA

Как программно удалить (известный) пароль из проекта Excel VBA?

Для ясности: я хочу удалить пароль из проекта VBA, а не из книги или каких-либо рабочих листов.

6 ответов

Это простой метод с использованием SendKeys для снятия защиты проекта VBA. Это приведет вас в проект, поэтому вам придется продолжать использовать SendKeys, чтобы найти способ снять защиту паролем: http://www.pcreview.co.uk/forums/thread-989191.php

А вот тот, который использует более продвинутый и несколько более надежный метод снятия защиты. Опять же, это только разблокирует для вас проект VB. http://www.ozgrid.com/forum/showthread.php?t = 13006 & page = 2

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

Мои 2 цента в Excel 2016:

  1. откройте файл xls с помощью Notepad++
  2. Найдите DPB= и замените его на DPx=
  3. Сохраните файл
  4. Откройте файл, откройте редактор VB, открытые модули работать не будут ( error 40230 )
  5. Сохраните файл как xlsm
  6. Оно работает

После открытия файла xlsm с помощью 7 zip, извлечения vbaproject.bin и замены DpB на DPx в Notepad ++ и повторного сохранения я получил много ошибок vbaproject, и пароль проекта vba пропал, но не было кода / форм.

Я щелкнул правой кнопкой мыши, чтобы экспортировать, и смог повторно импортировать в новый проект.

Я нашел другой способ решить эту проблему, чтобы избежать пароля проекта VBA без потери пароля.

Если тип файла — файлы XLSM:

  1. Переименуйте .xlsm в .zip (или вы можете открыть .xlsm с помощью 7zip/WinRAR) и откройте/распакуйте его.
  2. Отредактируйте файл xl/vbaProject.bin с помощью Notepad++ или HexEdit.
  3. Найдите DPB= и замените его на DPx=

  1. Сохраните файл
  2. Скопируйте этот файл обратно в .zip (или заархивируйте файлы в архив)
  3. Переименуйте архив обратно в .xlsm
  4. Откройте файл в Excel, если будет предложено «Продолжить загрузку проекта», нажмите «Да». Если будет предложено с ошибками, нажмите OK. Примечание: код может быть пустым или поврежденным, что мы исправим на следующем шаге
  5. Сохранить файл как новый .xlsm файл
  6. Откройте новый файл в Excel (теперь ошибок быть не должно)
  7. Нажмите Alt + F11, чтобы открыть редактор VBA.

или

Выполните также этот шаг

Я нашел другой способ решить эту проблему, чтобы избежать пароля проекта VBA, не теряя пароль Excel. используйте Hex-редактор XVI32 для процесса

Если тип файла — файлы XLSM:

Откройте файл XLSM с помощью 7-Zip (щелкните правой кнопкой мыши -> 7-Zip -> Открыть архив). 2. Скопируйте файл xl/vbaProject.bin из файла (можно перетащить из 7-Zip), не закрывайте 7-Zip

Откройте файл vbaProject.bin с помощью HexEdit

Найдите «DPB =» и замените его на «DPx =».

Скопируйте этот файл обратно в 7-Zip (опять же, перетаскивание работает)

Откройте файл XLSX в Excel, если будет предложено «Продолжить загрузку проекта», нажмите «Да». Если будет предложено с ошибками, нажмите OK. 8. Нажмите Alt+F11, чтобы открыть редактор VBA.

При нажатии будет отображаться сообщение об ошибке «Неожиданная ошибка (40230)», просто нажмите «ОК» (6 или 7 раз), пока она не исчезнет.

Затем он откроется автоматически

Другой способ удалить пароль проекта VBA:

  • Откройте файл xls с помощью шестнадцатеричного редактора. (например, Hex Edit http://www.hexedit.com/)
  • Искать DPB
  • Заменить DPB на DPx
  • Сохранить файл.
  • Открыть файл в Excel.
  • Нажмите «Да», если появится какое-либо окно сообщения.
  • Установите новый пароль из свойств проекта VBA.
  • Закройте и снова откройте файл, затем введите новый пароль для снятия защиты.

ОБНОВЛЕНИЕ: для Excel 2010 (работает для MS Office Pro Plus 2010 [14.0.6023.1000, 64-разрядная версия]),

  • Откройте файл XLSX с помощью 7zip

Если книга защищена:

  • Просмотрите папку xl
  • Если книга защищена, щелкните правой кнопкой мыши workbook.xml и выберите Изменить .
  • Найдите часть ( XXXX — ваш зашифрованный пароль)
  • Удалите деталь XXXX . (т.е. )
  • Сохраните файл.
  • Когда 7zip попросит вас обновить архив, ответьте Да .
  • Закройте 7zip и снова откройте свой XLSX.
  • Нажмите Защитить книгу на вкладке Обзор .
  • Необязательно: сохраните файл.

Если листы защищены:

  • Перейдите в папку xl/worksheets/ .
  • Щелкните правой кнопкой мыши Sheet1.xml , sheet2.xml и т. Д. И выберите Изменить .
  • Найдите порцию
  • Удалите зашифрованный пароль (например, )
  • Сохраните файл.
  • Когда 7zip попросит вас обновить архив, ответьте Да .
  • Закройте 7zip и снова откройте свой XLSX.
  • Нажмите Снять защиту с листа на вкладке Обзор .
  • Необязательно: сохраните файл.

Источник

Unexpected error 40230 excel

This forum has migrated to Microsoft Q&A. Visit Microsoft Q&A to post new questions.

Answered by:

Question

Anyone ever get this? and how do I contact Tech Support?

Unexpected Error 40230

I receieved this error when making db .accde

Thanks for any help.

ps. after selecting ok it repeated 9 times then appears to have finished anyway but I’ll need to test.

Answers

If decompiling didn’t fix it import everything into a new database and try again.

Bill Mosca
http://www.thatlldoit.com
http://tech.groups.yahoo.com/group/MS_Access_Professionals

If decompiling didn’t fixed the error, then follow Bill’s advice by creating a brand new database and copy your objects in it.

Most likely your VBA went corrupt and can’t be fixed by decompiling.

Hope this helps,

Daniel van den Berg | Washington, USA | «Anticipate the difficult by managing the easy»

Please vote an answer helpful if they helped. Please mark an answer(s) as an answer when your question is being answered.

Источник

Как исправить ошибку Microsoft Access 40230

Номер ошибки: Ошибка 40230
Название ошибки: Access Error 40230
Описание ошибки: Ошибка 40230: Возникла ошибка в приложении Microsoft Access. Приложение будет закрыто. Приносим извинения за неудобства.
Разработчик: Microsoft Corporation
Программное обеспечение: Microsoft Access
Относится к: Windows XP, Vista, 7, 8, 10, 11

Основы «Access Error 40230»

Эксперты обычно называют «Access Error 40230» «ошибкой времени выполнения». Программисты, такие как Microsoft Corporation, стремятся создавать программное обеспечение, свободное от этих сбоев, пока оно не будет публично выпущено. К сожалению, такие проблемы, как ошибка 40230, могут быть пропущены, и программное обеспечение будет содержать эти проблемы при выпуске.

После первоначального выпуска пользователи Microsoft Access могут столкнуться с сообщением «Access Error 40230» во время запуска программы. Когда появится ошибка, пользователи компьютеров смогут уведомить разработчика о наличии ошибки 40230 через отчеты об ошибках. Затем программисты могут исправить эти ошибки в коде и включить исправление, которое можно загрузить с их веб-сайта. В результате разработчик может использовать пакеты обновлений для Microsoft Access, доступные с их веб-сайта (или автоматическую загрузку), чтобы устранить эти ошибки 40230 проблемы и другие ошибки.

Почему возникает ошибка времени выполнения 40230?

«Access Error 40230» чаще всего может возникать при загрузке Microsoft Access. Следующие три наиболее значимые причины ошибок выполнения ошибки 40230 включают в себя:

Ошибка 40230 Crash — Номер ошибки вызовет блокировка системы компьютера, препятствуя использованию программы. Это происходит много, когда продукт (Microsoft Access) или компьютер не может обрабатывать уникальные входные данные.

Утечка памяти «Access Error 40230» — ошибка 40230 приводит к постоянной утечке памяти Microsoft Access. Потребление памяти напрямую пропорционально загрузке ЦП. Это может быть вызвано неправильной конфигурацией программного обеспечения Microsoft Corporation или когда одна команда запускает цикл, который не может быть завершен.

Ошибка 40230 Logic Error — Логические ошибки проявляются, когда пользователь вводит правильные данные, но устройство дает неверный результат. Неисправный исходный код Microsoft Corporation может привести к этим проблемам с обработкой ввода.

Большинство ошибок Access Error 40230 являются результатом отсутствия или повреждения версии файла, установленного Microsoft Access. Возникновение подобных проблем является раздражающим фактором, однако их легко устранить, заменив файл Microsoft Corporation, из-за которого возникает проблема. Мы также рекомендуем выполнить сканирование реестра, чтобы очистить все недействительные ссылки на Access Error 40230, которые могут являться причиной ошибки.

Классические проблемы Access Error 40230

Типичные ошибки Access Error 40230, возникающие в Microsoft Access для Windows:

  • «Ошибка программного обеспечения Access Error 40230. «
  • «Access Error 40230 не является приложением Win32.»
  • «Извините за неудобства — Access Error 40230 имеет проблему. «
  • «К сожалению, мы не можем найти Access Error 40230. «
  • «Отсутствует файл Access Error 40230.»
  • «Ошибка запуска в приложении: Access Error 40230. «
  • «Файл Access Error 40230 не запущен.»
  • «Ошибка Access Error 40230. «
  • «Ошибка пути программного обеспечения: Access Error 40230. «

Эти сообщения об ошибках Microsoft Corporation могут появляться во время установки программы, в то время как программа, связанная с Access Error 40230 (например, Microsoft Access) работает, во время запуска или завершения работы Windows, или даже во время установки операционной системы Windows. Важно отметить, когда возникают проблемы Access Error 40230, так как это помогает устранять проблемы Microsoft Access (и сообщать в Microsoft Corporation).

Причины ошибок в файле Access Error 40230

Эти проблемы Access Error 40230 создаются отсутствующими или поврежденными файлами Access Error 40230, недопустимыми записями реестра Microsoft Access или вредоносным программным обеспечением.

В первую очередь, проблемы Access Error 40230 создаются:

  • Недопустимый Access Error 40230 или поврежденный раздел реестра.
  • Вирус или вредоносное ПО, которые повредили файл Access Error 40230 или связанные с Microsoft Access программные файлы.
  • Другая программа злонамеренно или по ошибке удалила файлы, связанные с Access Error 40230.
  • Другая программа, конфликтующая с Access Error 40230 или другой общей ссылкой Microsoft Access.
  • Поврежденная установка или загрузка Microsoft Access (Access Error 40230).

Совместима с Windows 2000, XP, Vista, 7, 8, 10 и 11

Источник

Здравствуйте, друзья!
Последние дни бился над такой задачей:
Имеется файл .xls, в нем макрос на VBA, защищенный паролем. Файл создается путем экспортирования из программы ГрандСмета и содержит в себе смету, которая должна обрабатываться макросом.
На 32х разрядных версиях — отрабатывает без проблем.

На 64х столкнулся со следующей ошибкой:
Вынужденный обход парольной защиты модуля VBA в Excel 2010

Справка Microsoft дает однозначный ответ:
Вынужденный обход парольной защиты модуля VBA в Excel 2010

Связывался с Тех.Поддержкой, объяснял причину. Ответ был один:

У нас все работает. Проверяли на 64х разрядных версиях.

Тогда я решился самостоятельно править код макроса. Сложность, с которой столкнулся — модуль защищен паролем. О том, как сбросить/изменить пароль не используя специализированное ПО для взлома пароля
Итак, приступим. Заранее предупрежу — я не профессиональный программист, а скорее ЭниКейщик, так что возможны некорректные формулировки, а кому-то может и вовсе не понравиться выбранный мной путь.
Первым делом я стал бороздить просторы Сети в поисках решения. В основном полным-полно ссылок на ПО, из разряда PasswordCracker. Одно из решений опубликованное на Ru-Board’e полностью удаляло код модуля VBA.
В конце концов, мои старания вознаградились — предлагаю Вам вольный перевод найденного решения (к сожалению не могу указать первоисточник — не помню) + попытка понять суть выявленной «уязвимости».

Думаю, что ни для кого не секрет, что начиная с Excel 2007 использует Microsoft Office Open XML в качестве своего основного формата.

FarManager превосходно открывает xls файл с отображением всей структуры документа.
1. Запускаем FarManager.
2. Открываем файл для редактирования.
3. Ищем строку с определением ключа DPB, и изменяем имя ключа на DPW.
4. Сохраняем.
4. Открываем файл в Excel.
5. Подтверждаем загрузку проекта, не смотря на некорректный ключ (который мы сами и сделали некорректным в п.3):
Вынужденный обход парольной защиты модуля VBA в Excel 2010
6. В окнах с сообщениями об ошибке смело жмем ОК.
7. С помощью комбинации Alt+F11 — запускаем VBA Editor и, вуаля, код макроса доступен для редактирования.

Теперь причина возникавшей ошибки при запуске макроса в среде x64 — очевидна!

Компилятор подсказывает о том, что код в данном проекте должен быть обновлен для использования на 64х разрядных системах, конкретно указав, что надо было всего лишь добавить ключевое слово PtrSafe при объявлении функции.

Изменения внес, пересохранил, проверил. Все работает. Порадовал коллег решением наболевшей проблемы + приобрел опыт.

Пытаюсь решить последний вопрос, на котором я и застопорился:
Как вразумительно, и не обидев, объяснить Тех.Поддержке о решении возникшей проблемы с запуском макроса? Не должен же я самостоятельно перелапачивать все шаблоны (а их порядка 50), чтобы макрос корректно отрабатывал на x64 версиях Офиса. К тому же вопрос этики — пришлось «обходить» защиту кода макроса.

Благодарен за внимание. Надеюсь, что для некоторой части сообщества информация была полезна.

P.S. Вдохновленный решением возникшей проблемы, и оставшись только с одним вопросом, который задал чуть выше, я решился создать свой первый топик на Хабре, в надежде на профессиональный дружеский совет.

Автор: cyb3rD

  • Remove From My Forums
  • Question

  • Anyone ever get this? and how do I contact Tech Support?

    Unexpected Error 40230

    I receieved this error when making db .accde

    Thanks for any help.

    ps. after selecting ok it repeated 9 times then appears to have finished anyway but I’ll need to test.


    Chris Ward

    • Edited by

      Tuesday, April 24, 2012 4:10 PM
      add ps.

Answers

  • Chris

    If decompiling didn’t fix it import everything into a new database and try again.


    Bill Mosca
    http://www.thatlldoit.com
    http://tech.groups.yahoo.com/group/MS_Access_Professionals

    • Marked as answer by
      KCDW
      Wednesday, July 18, 2012 2:33 AM

  • Hi Chris,

    If decompiling didn’t fixed the error, then follow Bill’s advice by creating a brand new database and copy your objects in it.

    Most likely your VBA went corrupt and can’t be fixed by decompiling…

    Hope this helps,


    Daniel van den Berg | Washington, USA | «Anticipate the difficult by managing the easy»

    Please vote an answer helpful if they helped. Please mark an answer(s) as an answer when your question is being answered.

    • Marked as answer by
      KCDW
      Wednesday, July 18, 2012 2:33 AM

  • If you would like to post, please check out the MrExcel Message Board FAQ and register here. If you forgot your password, you can reset your password.

  • Thread starter

    ajm

  • Start date

    Dec 18, 2007

ajm

Well-known Member


  • #1

anybody able to tell me what this is? I am getting it when trying to open a worksheet that has VBA projects protected.

Format cells as date

Select range and press Ctrl+Shift+3 to format cells as date. (Shift 3 is the # sign which sort of looks like a small calendar).

ajm

Well-known Member


  • #4

I don’t think that you can expect a definitive answer unless you post the code.

ajm

Well-known Member


  • #5

Thanks fellas. Happy Christmas to both, while I am at it. AB, right again. its an MDE file but we have since got into it by exporting the projects to a new database.

VoG II — couldn’t post what I couldn’t see, otherwise would have. Cheers, all the same.

mumps

RoryA

Threads
1,187,218
Messages
5,962,279
Members
438,600
Latest member
jagadeesan12

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Error 40201 sibelius
  • Error 402 payment required
  • Error 4013 dns
  • Error 4010 itunes
  • Error 401 что это значит

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии