Ошибка 2046 access макрос

  • Remove From My Forums
  • Question

  • I have to process data from 400 separate MS Access databases all in one folder.

    I built a table of all the database names

    Built a form that shows the name of each database.

    Built macros that open the form, link the needed tables based on the current record in the form, run the queries that process the data and a final macro that should make the form advance to the next record.

    Entered «GoToRecord»   Object Type:Form  Object Name: FileList    Record:Next   Offset 1

     <?xml version=»1.0″ encoding=»UTF-16″ standalone=»no»?>
    <UserInterfaceMacros xmlns=»http://schemas.microsoft.com/office/accessservices/2009/11/application»><UserInterfaceMacro MinimumClientDesignVersion=»14.0.0000.0000″><Statements><Action Name=»GoToRecord»><Argument
    Name=»ObjectType»>Form</Argument><Argument Name=»ObjectName»>FileListForm</Argument><Argument Name=»Offset»>1</Argument></Action></Statements></UserInterfaceMacro></UserInterfaceMacros>

    When I hit Run I am getting and error.
    The Command or action «GoToRecord isn’t available now  You may be in a read only database or an unconverted database from an earlier version of Micosof Access.  The type of object the action applies to isn’t currently selected or isn’t i the
    active view.

    This is error # 2046 Action Name GoToRecord Argument 2, FileListForm, Next,1.

    I made a command button on the form and linked it to the macro and it will advance to the next record when I click on the command button, but the Macro will not work.  The form is open and in the Form View.

    I have checked everything I can think of — new to access 2010, but have created this process a thousand times in older versions of Access.  Have no idea why it won’t work.

    Please help!

Error: Ошибка 2046 — Команда или действие ‘|’ сейчас недоступен. @ * Возможно, вы находитесь в базе данных, доступной только для чтения, или в неконвертированной базе данных из более ранней версии Microsoft Office Access. * Тип объекта, к которому применяется действие, в настоящее время не выбран или отсутствует в активный vi

В этой статье представлена ошибка с номером Ошибка 2046, известная как Команда или действие ‘|’ сейчас недоступен, описанная как Команда или действие ‘|’ сейчас недоступен. @ * Возможно, вы находитесь в базе данных, доступной только для чтения, или в неконвертированной базе данных из более ранней версии Microsoft Office Access. * Тип объекта, к которому применяется действие, в настоящее время не выбран или отсутствует в активный vi

О программе Runtime Ошибка 2046

Время выполнения Ошибка 2046 происходит, когда Microsoft Access дает сбой или падает во время запуска, отсюда и название. Это не обязательно означает, что код был каким-то образом поврежден, просто он не сработал во время выполнения. Такая ошибка появляется на экране в виде раздражающего уведомления, если ее не устранить. Вот симптомы, причины и способы устранения проблемы.

Определения (Бета)

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

  • Доступ — НЕ ИСПОЛЬЗУЙТЕ этот тег для Microsoft Access, используйте вместо него [ms-access]
  • Действие — Действие ответ программы на событие, обнаруженное программой, которое может обрабатываться программными событиями.
  • Команда — команда — это директива для компьютерной программы, действующей как интерпретатор какой-то, чтобы выполнить конкретную задачу.
  • База данных — База данных — это организованный набор данных
  • Объект — Объект — это любой объект, которым можно управлять с помощью команд на языке программирования.
  • Выбрано — это общий тег, используемый при разговоре об одном или нескольких элементах графического интерфейса, которые выбираются пользователем.
  • Версия — версия определяет уникальное состояние компьютерного программного обеспечения или файла.
  • Vi — vi — это семейство текстовых редакторов, ориентированных на текстовый режим.
  • Access . Microsoft Access, также известный как Microsoft Office Access, представляет собой систему управления базами данных от Microsoft, которая обычно связывает реляционный Microsoft JetACE Database Engine с графическим пользовательским интерфейсом и инструментами разработки программного обеспечения.
  • Тип — типы и системы типов используются для обеспечения уровней абстракции в программах. < / li>
  • Microsoft office — Microsoft Office — это закрытый набор настольных приложений, предназначенный для использования специалистами по умственным наукам на компьютерах Windows и Macintosh.
Симптомы Ошибка 2046 — Команда или действие ‘|’ сейчас недоступен

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

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

Fix Команда или действие'|' сейчас недоступен (Error Ошибка 2046)
(Только для примера)

Причины Команда или действие ‘|’ сейчас недоступен — Ошибка 2046

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

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

Методы исправления

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

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

Обратите внимание: ни ErrorVault.com, ни его авторы не несут ответственности за результаты действий, предпринятых при использовании любого из методов ремонта, перечисленных на этой странице — вы выполняете эти шаги на свой страх и риск.

Метод 3 — Обновите программу защиты от вирусов или загрузите и установите последнюю версию Центра обновления Windows.

Заражение вирусом, вызывающее ошибку выполнения на вашем компьютере, необходимо немедленно предотвратить, поместить в карантин или удалить. Убедитесь, что вы обновили свою антивирусную программу и выполнили тщательное сканирование компьютера или запустите Центр обновления Windows, чтобы получить последние определения вирусов и исправить их.

Метод 1 — Закройте конфликтующие программы

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

  • Откройте диспетчер задач, одновременно нажав Ctrl-Alt-Del. Это позволит вам увидеть список запущенных в данный момент программ.
  • Перейдите на вкладку «Процессы» и остановите программы одну за другой, выделив каждую программу и нажав кнопку «Завершить процесс».
  • Вам нужно будет следить за тем, будет ли сообщение об ошибке появляться каждый раз при остановке процесса.
  • Как только вы определите, какая программа вызывает ошибку, вы можете перейти к следующему этапу устранения неполадок, переустановив приложение.

Метод 2 — Обновите / переустановите конфликтующие программы

Использование панели управления

  • В Windows 7 нажмите кнопку «Пуск», затем нажмите «Панель управления», затем «Удалить программу».
  • В Windows 8 нажмите кнопку «Пуск», затем прокрутите вниз и нажмите «Дополнительные настройки», затем нажмите «Панель управления»> «Удалить программу».
  • Для Windows 10 просто введите «Панель управления» в поле поиска и щелкните результат, затем нажмите «Удалить программу».
  • В разделе «Программы и компоненты» щелкните проблемную программу и нажмите «Обновить» или «Удалить».
  • Если вы выбрали обновление, вам просто нужно будет следовать подсказке, чтобы завершить процесс, однако, если вы выбрали «Удалить», вы будете следовать подсказке, чтобы удалить, а затем повторно загрузить или использовать установочный диск приложения для переустановки. программа.

Использование других методов

  • В Windows 7 список всех установленных программ можно найти, нажав кнопку «Пуск» и наведя указатель мыши на список, отображаемый на вкладке. Вы можете увидеть в этом списке утилиту для удаления программы. Вы можете продолжить и удалить с помощью утилит, доступных на этой вкладке.
  • В Windows 10 вы можете нажать «Пуск», затем «Настройка», а затем — «Приложения».
  • Прокрутите вниз, чтобы увидеть список приложений и функций, установленных на вашем компьютере.
  • Щелкните программу, которая вызывает ошибку времени выполнения, затем вы можете удалить ее или щелкнуть Дополнительные параметры, чтобы сбросить приложение.

Метод 4 — Переустановите библиотеки времени выполнения

Вы можете получить сообщение об ошибке из-за обновления, такого как пакет MS Visual C ++, который может быть установлен неправильно или полностью. Что вы можете сделать, так это удалить текущий пакет и установить новую копию.

  • Удалите пакет, выбрав «Программы и компоненты», найдите и выделите распространяемый пакет Microsoft Visual C ++.
  • Нажмите «Удалить» в верхней части списка и, когда это будет сделано, перезагрузите компьютер.
  • Загрузите последний распространяемый пакет от Microsoft и установите его.

Метод 5 — Запустить очистку диска

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

  • Вам следует подумать о резервном копировании файлов и освобождении места на жестком диске.
  • Вы также можете очистить кеш и перезагрузить компьютер.
  • Вы также можете запустить очистку диска, открыть окно проводника и щелкнуть правой кнопкой мыши по основному каталогу (обычно это C :)
  • Щелкните «Свойства», а затем — «Очистка диска».

Метод 6 — Переустановите графический драйвер

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

  • Откройте диспетчер устройств и найдите драйвер видеокарты.
  • Щелкните правой кнопкой мыши драйвер видеокарты, затем нажмите «Удалить», затем перезагрузите компьютер.

Метод 7 — Ошибка выполнения, связанная с IE

Если полученная ошибка связана с Internet Explorer, вы можете сделать следующее:

  1. Сбросьте настройки браузера.
    • В Windows 7 вы можете нажать «Пуск», перейти в «Панель управления» и нажать «Свойства обозревателя» слева. Затем вы можете перейти на вкладку «Дополнительно» и нажать кнопку «Сброс».
    • Для Windows 8 и 10 вы можете нажать «Поиск» и ввести «Свойства обозревателя», затем перейти на вкладку «Дополнительно» и нажать «Сброс».
  2. Отключить отладку скриптов и уведомления об ошибках.
    • В том же окне «Свойства обозревателя» можно перейти на вкладку «Дополнительно» и найти пункт «Отключить отладку сценария».
    • Установите флажок в переключателе.
    • Одновременно снимите флажок «Отображать уведомление о каждой ошибке сценария», затем нажмите «Применить» и «ОК», затем перезагрузите компьютер.

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

Другие языки:

How to fix Error 2046 (The command or action ‘|’ isn’t available now) — The command or action ‘|’ isn’t available [email protected]* You may be in a read-only database or an unconverted database from an earlier version of Microsoft Office Access.* The type of object the action applies to isn’t currently selected or isn’t in the active vi
Wie beheben Fehler 2046 (Der Befehl oder die Aktion ‘|’ ist gerade nicht verfügbar) — Der Befehl oder die Aktion ‘|’ ist derzeit nicht verfü[email protected]* Sie befinden sich möglicherweise in einer schreibgeschützten Datenbank oder einer nicht konvertierten Datenbank aus einer früheren Version von Microsoft Office Access.* Der Objekttyp, auf den die Aktion angewendet wird, ist derzeit nicht ausgewählt oder befindet sich nicht im aktiv vi
Come fissare Errore 2046 (Il comando o l’azione ‘|’ non è disponibile ora) — Il comando o l’azione ‘|’ non è disponibile [email protected]* Potresti trovarti in un database di sola lettura o in un database non convertito da una versione precedente di Microsoft Office Access.* Il tipo di oggetto a cui si applica l’azione non è attualmente selezionato o non è nella vista attiva
Hoe maak je Fout 2046 (Het commando of de actie ‘|’ is nu niet beschikbaar) — Het commando of de actie ‘|’ is nu niet [email protected]* U bevindt zich mogelijk in een alleen-lezen database of een niet-geconverteerde database van een eerdere versie van Microsoft Office Access.* Het type object waarop de actie van toepassing is, is momenteel niet geselecteerd of staat niet in de actieve vi
Comment réparer Erreur 2046 (La commande ou l’action ‘|’ n’est pas disponible maintenant) — La commande ou l’action ‘|’ n’est pas disponible [email protected]* Vous êtes peut-être dans une base de données en lecture seule ou dans une base de données non convertie d’une version antérieure de Microsoft Office Access.* Le type d’objet auquel l’action s’applique n’est pas actuellement sélectionné ou n’est pas dans le actif vi
어떻게 고치는 지 오류 2046 (명령 또는 작업 ‘|’ 지금은 사용할 수 없습니다) — 명령 또는 작업 ‘|’ 지금은 사용할 수 없습니다[email protected]* 읽기 전용 데이터베이스에 있거나 이전 버전의 Microsoft Office Access에서 변환되지 않은 데이터베이스에 있을 수 있습니다.* 작업이 적용되는 개체 유형이 현재 선택되어 있지 않거나 활성 vi
Como corrigir o Erro 2046 (O comando ou ação ‘|’ não está disponível agora) — O comando ou ação ‘|’ não está disponível agora. @ * Você pode estar em um banco de dados somente leitura ou em um banco de dados não convertido de uma versão anterior do Microsoft Office Access. * O tipo de objeto ao qual a ação se aplica não está selecionado ou não está no vi ativo
Hur man åtgärdar Fel 2046 (Kommandot eller åtgärden ‘|’ är inte tillgänglig nu) — Kommandot eller åtgärden ‘|’ är inte tillgänglig [email protected]* Du kanske befinner dig i en skrivskyddad databas eller en okonverterad databas från en tidigare version av Microsoft Office Access.* Typ av objekt som åtgärden gäller är inte för närvarande vald eller finns inte i aktiv vi
Jak naprawić Błąd 2046 (Polecenie lub akcja ‘|’ nie jest teraz dostępny) — Polecenie lub akcja ‘|’ nie jest teraz dostę[email protected]* Być może znajdujesz się w bazie danych tylko do odczytu lub w nieprzekonwertowanej bazie danych z wcześniejszej wersji programu Microsoft Office Access.* Typ obiektu, którego dotyczy akcja, nie jest aktualnie wybrany lub nie znajduje się w aktywny vi
Cómo arreglar Error 2046 (El comando o acción ‘|’ no está disponible ahora) — El comando o acción ‘|’ no está disponible ahora. @ * Puede estar en una base de datos de solo lectura o una base de datos no convertida de una versión anterior de Microsoft Office Access. * El tipo de objeto al que se aplica la acción no está seleccionado actualmente o no está en el activo vi

The Author Об авторе: Фил Харт является участником сообщества Microsoft с 2010 года. С текущим количеством баллов более 100 000 он внес более 3000 ответов на форумах Microsoft Support и создал почти 200 новых справочных статей в Technet Wiki.

Следуйте за нами: Facebook Youtube Twitter

Последнее обновление:

12/01/23 02:57 : Пользователь Android проголосовал за то, что метод восстановления 3 работает для него.

Рекомендуемый инструмент для ремонта:

Этот инструмент восстановления может устранить такие распространенные проблемы компьютера, как синие экраны, сбои и замораживание, отсутствующие DLL-файлы, а также устранить повреждения от вредоносных программ/вирусов и многое другое путем замены поврежденных и отсутствующих системных файлов.

ШАГ 1:

Нажмите здесь, чтобы скачать и установите средство восстановления Windows.

ШАГ 2:

Нажмите на Start Scan и позвольте ему проанализировать ваше устройство.

ШАГ 3:

Нажмите на Repair All, чтобы устранить все обнаруженные проблемы.

СКАЧАТЬ СЕЙЧАС

Совместимость

Требования

1 Ghz CPU, 512 MB RAM, 40 GB HDD
Эта загрузка предлагает неограниченное бесплатное сканирование ПК с Windows. Полное восстановление системы начинается от $19,95.

ID статьи: ACX011138RU

Применяется к: Windows 10, Windows 8.1, Windows 7, Windows Vista, Windows XP, Windows 2000

Совет по увеличению скорости #40

Использование утилит настройки RAM, GPU и CPU:

Если вы опытный пользователь, вы можете использовать различные бесплатные утилиты настройки для оптимизации вашей оперативной памяти, видеокарты и процессора. Настройте параметры, скорость и синхронизацию этих важных компонентов вашего компьютера, чтобы получить лучшую скорость и максимальную производительность. Некоторые из этих полезных инструментов включают MSI Afterburner, CPUID, Intel XTU и AMD Catalyst.

Нажмите здесь, чтобы узнать о другом способе ускорения работы ПК под управлением Windows

Логотипы Microsoft и Windows® являются зарегистрированными торговыми марками Microsoft. Отказ от ответственности: ErrorVault.com не связан с Microsoft и не заявляет о такой связи. Эта страница может содержать определения из https://stackoverflow.com/tags по лицензии CC-BY-SA. Информация на этой странице представлена исключительно в информационных целях. © Copyright 2018

Icon Ex Номер ошибки: Ошибка 2046
Название ошибки: The command or action ‘|’ isn’t available now
Описание ошибки: The command or action ‘|’ isn’t available now.@* You may be in a read-only database or an unconverted database from an earlier version of Microsoft Office Access.* The type of object the action applies to isn’t currently selected or isn’t in the active vi
Разработчик: Microsoft Corporation
Программное обеспечение: Microsoft Access
Относится к: Windows XP, Vista, 7, 8, 10, 11

Фон «The command or action ‘|’ isn’t available now»

Это наиболее распространенное условие «The command or action ‘|’ isn’t available now», известное как ошибка времени выполнения (ошибка). Разработчики, такие как Microsoft Corporation, обычно проходят через несколько контрольных точек перед запуском программного обеспечения, такого как Microsoft Access. К сожалению, многие ошибки могут быть пропущены, что приводит к проблемам, таким как те, с ошибкой 2046.

Некоторые люди могут столкнуться с сообщением «The command or action ‘|’ isn’t available now.@* You may be in a read-only database or an unconverted database from an earlier version of Microsoft Office Access.* The type of object the action applies to isn’t currently selected or isn’t in the active vi» во время работы программного обеспечения. После того, как об ошибке будет сообщено, Microsoft Corporation отреагирует и быстро исследует ошибки 2046 проблемы. Затем Microsoft Corporation может исправить эти ошибки в исходном коде и подготовить обновление для загрузки. Если есть запрос на обновление Microsoft Access, это обычно обходной путь для устранения проблем, таких как ошибка 2046 и другие ошибки.

Ошибки выполнения при запуске Microsoft Access — это когда вы, скорее всего, столкнетесь с «The command or action ‘|’ isn’t available now». Мы можем определить, что ошибки во время выполнения ошибки 2046 происходят из:

Ошибка 2046 Crash — ошибка 2046 блокирует любой вход, и это может привести к сбою машины. Эти ошибки обычно возникают, когда входы Microsoft Access не могут быть правильно обработаны, или они смущены тем, что должно быть выведено.

Утечка памяти «The command or action ‘|’ isn’t available now» — ошибка 2046 утечка памяти приводит к тому, что Microsoft Access постоянно использует все больше и больше памяти, увяская систему. Возможные причины включают сбой Microsoft Corporation для девыделения памяти в программе или когда плохой код выполняет «бесконечный цикл».

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

Повреждение, отсутствие или удаление файлов The command or action ‘|’ isn’t available now может привести к ошибкам Microsoft Access. Возникновение подобных проблем является раздражающим фактором, однако их легко устранить, заменив файл Microsoft Corporation, из-за которого возникает проблема. В качестве дополнительного шага по устранению неполадок мы настоятельно рекомендуем очистить все пути к неверным файлам и ссылки на расширения файлов Microsoft Corporation, которые могут способствовать возникновению такого рода ошибок, связанных с The command or action ‘|’ isn’t available now.

Ошибки The command or action ‘|’ isn’t available now

Частичный список ошибок The command or action ‘|’ isn’t available now Microsoft Access:

  • «Ошибка программного обеспечения The command or action ‘|’ isn’t available now. «
  • «The command or action ‘|’ isn’t available now не является приложением Win32.»
  • «The command or action ‘|’ isn’t available now столкнулся с проблемой и закроется. «
  • «The command or action ‘|’ isn’t available now не может быть найден. «
  • «The command or action ‘|’ isn’t available now не может быть найден. «
  • «Ошибка запуска в приложении: The command or action ‘|’ isn’t available now. «
  • «The command or action ‘|’ isn’t available now не работает. «
  • «The command or action ‘|’ isn’t available now выйти. «
  • «Неверный путь к программе: The command or action ‘|’ isn’t available now. «

Эти сообщения об ошибках Microsoft Corporation могут появляться во время установки программы, в то время как программа, связанная с The command or action ‘|’ isn’t available now (например, Microsoft Access) работает, во время запуска или завершения работы Windows, или даже во время установки операционной системы Windows. При появлении ошибки The command or action ‘|’ isn’t available now запишите вхождения для устранения неполадок Microsoft Access и чтобы HelpMicrosoft Corporation найти причину.

Причины ошибок в файле The command or action ‘|’ isn’t available now

Заражение вредоносными программами, недопустимые записи реестра Microsoft Access или отсутствующие или поврежденные файлы The command or action ‘|’ isn’t available now могут создать эти ошибки The command or action ‘|’ isn’t available now.

Точнее, ошибки The command or action ‘|’ isn’t available now, созданные из:

  • Поврежденные ключи реестра Windows, связанные с The command or action ‘|’ isn’t available now / Microsoft Access.
  • Вирус или вредоносное ПО, повреждающее The command or action ‘|’ isn’t available now.
  • Другая программа злонамеренно или по ошибке удалила файлы, связанные с The command or action ‘|’ isn’t available now.
  • The command or action ‘|’ isn’t available now конфликтует с другой программой (общим файлом).
  • Поврежденная установка или загрузка Microsoft Access (The command or action ‘|’ isn’t available now).

Продукт Solvusoft

Загрузка
WinThruster 2022 — Проверьте свой компьютер на наличие ошибок.

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

Установить необязательные продукты — WinThruster (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия | Удаление

  • Remove From My Forums
  • Question

  • I have to process data from 400 separate MS Access databases all in one folder.

    I built a table of all the database names

    Built a form that shows the name of each database.

    Built macros that open the form, link the needed tables based on the current record in the form, run the queries that process the data and a final macro that should make the form advance to the next record.

    Entered «GoToRecord»   Object Type:Form  Object Name: FileList    Record:Next   Offset 1

     <?xml version=»1.0″ encoding=»UTF-16″ standalone=»no»?>
    <UserInterfaceMacros xmlns=»http://schemas.microsoft.com/office/accessservices/2009/11/application»><UserInterfaceMacro MinimumClientDesignVersion=»14.0.0000.0000″><Statements><Action Name=»GoToRecord»><Argument
    Name=»ObjectType»>Form</Argument><Argument Name=»ObjectName»>FileListForm</Argument><Argument Name=»Offset»>1</Argument></Action></Statements></UserInterfaceMacro></UserInterfaceMacros>

    When I hit Run I am getting and error.
    The Command or action «GoToRecord isn’t available now  You may be in a read only database or an unconverted database from an earlier version of Micosof Access.  The type of object the action applies to isn’t currently selected or isn’t i the
    active view.

    This is error # 2046 Action Name GoToRecord Argument 2, FileListForm, Next,1.

    I made a command button on the form and linked it to the macro and it will advance to the next record when I click on the command button, but the Macro will not work.  The form is open and in the Form View.

    I have checked everything I can think of — new to access 2010, but have created this process a thousand times in older versions of Access.  Have no idea why it won’t work.

    Please help!

15 / 15 / 2

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

Сообщений: 452

1

05.05.2012, 11:42. Показов 4858. Ответов 4


При попытке применить данные команды к какому-либо объекту формы возникает ошибка (см прикрепленные файлы). БД преобразована, объекты доступны.

Бд команда применяется в форме «администрирование главное», вкладка «состав секций». Макрос1

Миниатюры

Макрокоманда "КЭлементууправления" и "Обновление" не достпупны 2046
 

Макрокоманда "КЭлементууправления" и "Обновление" не достпупны 2046
 

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

0

43 / 43 / 0

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

Сообщений: 205

05.05.2012, 12:11

2

Нужно, что бы поле21 было активно.

0

3541 / 1115 / 94

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

Сообщений: 1,513

05.05.2012, 13:32

3

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

Нужно, что бы поле21 было активно.

Непонятно, что вы хотели сказать этой фразой?
По моему разумению поле считается активным, если на нем установлен фокус. А ТС, с помощью макрокоманды КЭлементуУправления (GoToControl), как раз и пытается перевести фокус на указанное поле.

nikooolay, свойство какого события какой формы или какого элемента управления вы используете для вызова макроса?

0

15 / 15 / 2

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

Сообщений: 452

05.05.2012, 13:54

 [ТС]

4

В данный момент, я не использую вызов макроса через обработчик событий(в дальнейшем это будет, при обновлении значения в ПолеСоСписком17 ). Пока вызываю вручную
Раньше использовал данные функции, проблем не было

0

minob

3541 / 1115 / 94

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

Сообщений: 1,513

05.05.2012, 14:13

5

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

в дальнейшем это будет, при обновлении значения в ПолеСоСписком17

Поместил в свойство (событие) «После обновления» ПолеСоСписком17 значение Макрос1, все работает.

Не увлекайтесь макросами, лучше в процедуру обработки события поместите код

Visual Basic
1
Me!Поле21.SetFocus

1

  • #1

Hi Everyone,

I have tried to search before making this post, but none of result solve my issue (I am a newbie and quite new to Access).
My access file has 2 forms: FrmMain (bound) and FrmID (unbound).
— The Frmmain contents the informtions with primary-key: SoBC (ID), it is default form and display most recent record.
— FrmID is kind of data-entry form which is allow user keys in new ID number.

When user opens access, Frmmain is loaded. On the Form_Load event, I check if database contents any data yet, if no data, a msg reminds user to key in first data. The form FrmID is then openned with an auto suggested «ID name».
When OK_btn on the form FrmID is clicked, it searches in database (tblMain) if this new «ID name» is exist or not, and performs following code:

Code Tags Added by UG

Code:

            CalculatedStr = Trim(Forms!FrmID!Txt_NewSBC)
                          
            ConditionStr = "[SoBC]= '" & CalculatedStr & "'"
            SBCvalue = DLookup("SoBC", "tblMain", ConditionStr)
          
            If Not IsNull(SBCvalue) Then
                MsgBox "This ID number is already exist!"
                Txt_NewSBC.SetFocus
              
            Else
                DoCmd.Close acForm, "FrmID"
                             
                rs.AddNew
                rs!SoBC = CalculatedStr
                rs.Update
                                                       
                Application.Echo False  'turn-off screen for a while in order preventing the form flashes to first record
                Forms!FrmMain.Requery
                DoCmd.GoToRecord acDataForm, "FrmMain", acLast      'the error 2046 orcurs here
                Application.Echo True  'turn-on screen

            End If

Please help to get out this point since I am already stuck for a day.

I have attached the project file, to see to problem, delete all record and open the form FrmMain.

Best regards, Xuan

  • ID management.zip

    246.6 KB · Views: 88

Last edited by a moderator: Apr 1, 2020

MajP

MajP

You’ve got your good things, and you’ve got mine.
  • #2

Works fine for me. It does what you describe without failing.

  • #3

Works fine for me. It does what you describe without failing.

Hi MajP. Have you deleted all record, close FrmMain and reopen it?

  • #4

I did and yes get error and Access freezes. Cannot get right click menu nor click ribbon.

Set focus back to FrmMain first:

Forms!FrmMain.SetFocus

Not a fan of setting Caption property in table. I prefer to see real field name when viewing table. I seldom set formatting in table.

MajP

MajP

You’ve got your good things, and you’ve got mine.
  • #5

I did delete all the records, but could not recreate the error. The reason is this error, «Is not available now» is very focused related, and will only have if you use docmd code. If you use a recordset move last it would not happen. One way to tell when it is going to happen is if you look at the ribbon and that action is greyed out. It will be greyed out depending on what other action you are doing and what has focus. So basically you are trying to run a menu action that cannot be run because it is greyed out. Therefore setting the focus to the correct place fixes it (if the action is no longer greyed out). In my case it worked because I had the focus in a working location.

  • #6

I did and yes get error and Access freezes. Cannot get right click menu nor click ribbon.

Set focus back to FrmMain first:

Forms!FrmMain.SetFocus

Not a fan of setting Caption property in table. I prefer to see real field name when viewing table. I seldom set formatting in table.

Dear June7.

It works, I am so happy and much appreciated your helps.
As a beginner, I am playing around table properties…

Yes, set focus to form FrmMain after Docmd close FrmID. Then It works
DoCmd.Close acForm, «FrmID»
Forms!FrmMain.SetFocus

But set focus to form FrmMain BEFORE Docmd close FrmID. Then It doesn’t works. Just curiously.

MajP

MajP

You’ve got your good things, and you’ve got mine.
  • #7

As I said this is Docmd specific
So try replacing
DoCmd.GoToRecord acDataForm, «FrmMain», acLast ‘the error 2046 orcurs here
with
Me.Recordset.MoveLast

  • #8

I suppose because focus is returned to FrmID when Close command executes.

  • #9

As I said this is Docmd specific
So try replacing
DoCmd.GoToRecord acDataForm, «FrmMain», acLast ‘the error 2046 orcurs here
with
Me.Recordset.MoveLast

MajP, you need to deleted all record, close FrmMain and reopen it. The error will occur…
I will study about Recordset.MoveLast method, however I tried your suggestion, unfortunately It still got error. Can try at your side?

Code Tags Added by UG

Code:

DoCmd.Close acForm, "FrmID"
                Forms!FrmMain.SetFocus
             
                rs.AddNew
                rs!SoBC = CalculatedStr
                rs.Update
                                                      
                Application.Echo False  'turn-off screen for a while in order preventing the form flashes to first record
                Forms!FrmMain.Requery
                ' DoCmd.GoToRecord acDataForm, "FrmMain", acLast     ' Comment out
                Me.Recordset.MoveLast                                                    ' Try this
                Application.Echo True  'turn-on screen

Regards, Xuan

Last edited by a moderator: Apr 1, 2020

  • #10

I suppose because focus is returned to FrmID when Close command executes.

Yeah, I understand and think so. Have a good day, brother!

MajP

MajP

You’ve got your good things, and you’ve got mine.
  • #11

There was a lot of other issues.

  • ID Managemetn_MajP.zip

    67 KB · Views: 71

  • #12

There was a lot of other issues.

Dear MajP,

Appreciated your time and helps !

I have realized following things:

1. You changed db, rs to local variable. Is that for computer RAM saving?
2. Use Recordset.MoveLast instead of DoCmd.GoToRecord. Yes, I am good with this recommendation.
3. When user click OK, i want FrmMain showing latest record (just created). Your code with rs.Movelast seems not making it (probably FrmMain.Requery re-points to 1st record), what is your purpose of using «rs.Movelast»?
4. I have changed the code a bit as attached photo. Should be OK, right?

  • Capture.PNG

    Capture.PNG

    91.1 KB · Views: 112

MajP

MajP

You’ve got your good things, and you’ve got mine.
  • #13

1. You changed db, rs to local variable. Is that for computer RAM saving?

Not for RAM but for scope and encapsulation. For what I could see all your events opened a recordset and then finished using it, the other events were not «reusing» the same recordset. Therefore there is no reason to leave it open. If it is local it goes out of scope when done and the recordset closes. The way you had it would be considered sloppy programming and not very error proof.

3. When user click OK, i want FrmMain showing latest record (just created). Your code with rs.Movelast seems not making it (probably FrmMain.Requery re-points to 1st record), what is your purpose of using «rs.Movelast»?

Sorry that should be
Forms!frmmain.Recordset.MoveLast
I thought RS was pointing to the actual mainform recordset, but it is basically a clone.

This also answers the original problem. Since your focus was going to frmID which is unbound the docmd.Gotorecord «is not available now». Like I said you can prove this. Set focus on frmID and look at the ribbon. Goto is greyed out.

  • #14

Sorry that should be
Forms!frmmain.Recordset.MoveLast
I thought RS was pointing to the actual mainform recordset, but it is basically a clone.

Oh, in that case, RS shoud be something like: «Set rs = Froms!FrmMain.Recordset», Am I correct?

This also answers the original problem. Since your focus was going to frmID which is unbound the docmd.Gotorecord «is not available now». Like I said you can prove this. Set focus on frmID and look at the ribbon. Goto is greyed out.

Sadly, I could not make it, or I might misunderstood. Attached photo, the form frmID got focus and active, but «goto, create new…» on mainform are not grey out.

  • Capture.PNG

    Capture.PNG

    7.5 KB · Views: 110

arnelgp

arnelgp

..forever waiting… waiting for jellybean!
  • #15

hello, I made changes to your db on post #1.
see if this is the behavior you want.
chk the code of FrmMain and FrmID.

  • ID management.zip

    242.4 KB · Views: 70

  • #16

Hi Arnelgp.

I have learnt good technique from your code
However, its behavior is not correct when I click Add-new button which is also trigger the form FrmID.

Thank for your help and much appreciated

arnelgp

arnelgp

..forever waiting… waiting for jellybean!
  • #17

ok, for now I removed the macro for the Add New Record.
I created a function in frmMain, udfNewRecord().
move the code that create new record to this function so that
opening the form without record and adding new record will
call on Same function.

  • ID management.zip

    242.9 KB · Views: 85

  • #18

ok, for now I removed the macro for the Add New Record.
I created a function in frmMain, udfNewRecord().
move the code that create new record to this function so that
opening the form without record and adding new record will
call on Same function.

Thank you. It works perfect now

arnelgp

arnelgp

..forever waiting… waiting for jellybean!
  • #20

Dear Arnelgp

Thank for your your help.
I have a question thats not so related to topic, but as a new with access I am so much confused btw regular recordset rs ( Set rs = db.OpenRecordset(«SELECT * FROM mytablename) and Form’s recordset: Me.Recordset (let assumed this form link to mytablename).
Are they same?
Seems method rs.movenext won’t make the form shows next record while Recordset .movenext does.
Sorry for those question, but they really confuse me.

I am running Microsoft Office 2010. Previously, I was running Office 2007. While running 2007 all my macros worked fine.

After installing Office 2010 — whenever I run my macro in Access 2010 I get the following error:

Microsoft Visual Basic
Run-time error ‘2046’:
The command or action ‘Quit’ isn’t available now.

When I click on debug the following is highlighted:

DoCmd.Quit ACSaveAll

Any pointers?

Microsoft AccessVB Script

All of life is about relationships, and EE has made a viirtual community a real community. It lifts everyone’s boat

Unlimited question asking, solutions, articles and more.

This is the best money I have ever spent. I cannot not tell you how many times these folks have saved my bacon. I learn so much from the contributors.

rwheeler23

Unlimited question asking, solutions, articles and more.

I started with Experts Exchange in 2004 and it’s been a mainstay of my professional computing life since. It helped me launch a career as a programmer / Oracle data analyst

William Peck

Unlimited question asking, solutions, articles and more.

Your help has saved me hundreds of hours of internet surfing.

fblack61

Unlimited question asking, solutions, articles and more.

Not exactly the question you had in mind?

Sign up for an EE membership and get your own personalized solution. With an EE membership, you can ask unlimited troubleshooting, research, or opinion questions.

ask a question

Unlimited question asking, solutions, articles and more.

Experts Exchange is like having an extremely knowledgeable team sitting and waiting for your call. Couldn’t do my job half as well as I do without it!

James Murphy

The following piece of VBA code has been working for more than a year.

I am running Microsoft Access 2013

Public Function AutoUpdate()
    Dim cdb As DAO.Database
    Set cdb = CurrentDb
    'AutoCrawle 'a function that does the expected task.
    Set cdb = Nothing
    Application.Quit
End Function

Lately it throws the following error:

run time error 2046 the command or action ‘quit’ isn’t available now.

It is generated from the line: Application.Quit

Any Ideas why this happens? Over time, the file has grown large up two 2Gigabytes, due to growth of a record set.

EDIT: Also without AutoCrawle function same scenario happens. So I commented it.

There is an oddity in my VBA module. Sometimes I get a run-time error 2046: The command or action ‘RunSQL’ isn’t available now.
When I try it again later, without changing any code, it no longer gives the error, some time later, it does again.

Does anyone know what triggers this run-time error? And how can I avoid it?

I think the problem has something to do with doCmd
The line that shows the error is as follows:

DoCmd.RunSQL "CREATE TABLE " & tableName & " (" & tableDefinition & ")"

There is no table with the same name.

braX's user avatar

braX

11.5k5 gold badges20 silver badges33 bronze badges

asked Sep 29, 2010 at 8:05

neXus's user avatar

1st of all creating table in access not with «create table».
this is the example to make new table with access vb:

DoCmd.RunSQL ("SELECT '" & Value & "' as [nameOfField] &'"INTO"' & tableName ) 

answered Sep 29, 2010 at 12:51

Xarxas's user avatar

XarxasXarxas

972 silver badges11 bronze badges

3

15 / 15 / 2

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

Сообщений: 452

1

05.05.2012, 11:42. Показов 5177. Ответов 4


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

При попытке применить данные команды к какому-либо объекту формы возникает ошибка (см прикрепленные файлы). БД преобразована, объекты доступны.

Бд команда применяется в форме «администрирование главное», вкладка «состав секций». Макрос1

Миниатюры

Макрокоманда "КЭлементууправления" и "Обновление" не достпупны 2046
 

Макрокоманда "КЭлементууправления" и "Обновление" не достпупны 2046
 



0



43 / 43 / 0

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

Сообщений: 205

05.05.2012, 12:11

2

Нужно, что бы поле21 было активно.



0



3543 / 1117 / 94

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

Сообщений: 1,513

05.05.2012, 13:32

3

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

Нужно, что бы поле21 было активно.

Непонятно, что вы хотели сказать этой фразой?
По моему разумению поле считается активным, если на нем установлен фокус. А ТС, с помощью макрокоманды КЭлементуУправления (GoToControl), как раз и пытается перевести фокус на указанное поле.

nikooolay, свойство какого события какой формы или какого элемента управления вы используете для вызова макроса?



0



15 / 15 / 2

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

Сообщений: 452

05.05.2012, 13:54

 [ТС]

4

В данный момент, я не использую вызов макроса через обработчик событий(в дальнейшем это будет, при обновлении значения в ПолеСоСписком17 ). Пока вызываю вручную
Раньше использовал данные функции, проблем не было



0



minob

3543 / 1117 / 94

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

Сообщений: 1,513

05.05.2012, 14:13

5

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

в дальнейшем это будет, при обновлении значения в ПолеСоСписком17

Поместил в свойство (событие) «После обновления» ПолеСоСписком17 значение Макрос1, все работает.

Не увлекайтесь макросами, лучше в процедуру обработки события поместите код

Visual Basic
1
Me!Поле21.SetFocus



1



  • Ошибка 2045 мерседес w164
  • Ошибка 2020 1 мерседес gl решение
  • Ошибка 2045 2 мерседес спринтер
  • Ошибка 2020 001 мерседес дизель
  • Ошибка 2043 мерседес перестал заводиться