В этой статье представлена ошибка с номером Ошибка 3421, известная как Ошибка Microsoft Access 3421, описанная как Ошибка преобразования типа данных.
О программе Runtime Ошибка 3421
Время выполнения Ошибка 3421 происходит, когда Microsoft Access дает сбой или падает во время запуска, отсюда и название. Это не обязательно означает, что код был каким-то образом поврежден, просто он не сработал во время выполнения. Такая ошибка появляется на экране в виде раздражающего уведомления, если ее не устранить. Вот симптомы, причины и способы устранения проблемы.
Определения (Бета)
Здесь мы приводим некоторые определения слов, содержащихся в вашей ошибке, в попытке помочь вам понять вашу проблему. Эта работа продолжается, поэтому иногда мы можем неправильно определить слово, так что не стесняйтесь пропустить этот раздел!
- Access — НЕ ИСПОЛЬЗУЙТЕ этот тег для Microsoft Access, используйте вместо него [ms-access]
- Преобразование типов — Преобразование типов — это способ неявного или явного изменения объекта одного типа данных на другой
- Access . Microsoft Access, также известный как Microsoft Office Access, представляет собой систему управления базами данных от Microsoft, которая обычно объединяет реляционное ядро СУБД Microsoft JetACE с графическим пользовательским интерфейсом и инструментами разработки программного обеспечения.
- Доступ к Microsoft — Microsoft Access, также известный как Microsoft Office Access, представляет собой систему управления базами данных от Microsoft, который обычно сочетает в себе реляционное ядро СУБД Microsoft JetACE с графическим пользовательским интерфейсом и инструментами разработки программного обеспечения.
- Тип . Типы и системы типов используются для обеспечения уровней абстракции в программах.
Симптомы Ошибка 3421 — Ошибка Microsoft Access 3421
Ошибки времени выполнения происходят без предупреждения. Сообщение об ошибке может появиться на экране при любом запуске %программы%. Фактически, сообщение об ошибке или другое диалоговое окно может появляться снова и снова, если не принять меры на ранней стадии.
Возможны случаи удаления файлов или появления новых файлов. Хотя этот симптом в основном связан с заражением вирусом, его можно отнести к симптомам ошибки времени выполнения, поскольку заражение вирусом является одной из причин ошибки времени выполнения. Пользователь также может столкнуться с внезапным падением скорости интернет-соединения, но, опять же, это не всегда так.
(Только для примера)
Причины Ошибка Microsoft Access 3421 — Ошибка 3421
При разработке программного обеспечения программисты составляют код, предвидя возникновение ошибок. Однако идеальных проектов не бывает, поскольку ошибки можно ожидать даже при самом лучшем дизайне программы. Глюки могут произойти во время выполнения программы, если определенная ошибка не была обнаружена и устранена во время проектирования и тестирования.
Ошибки во время выполнения обычно вызваны несовместимостью программ, запущенных в одно и то же время. Они также могут возникать из-за проблем с памятью, плохого графического драйвера или заражения вирусом. Каким бы ни был случай, проблему необходимо решить немедленно, чтобы избежать дальнейших проблем. Ниже приведены способы устранения ошибки.
Методы исправления
Ошибки времени выполнения могут быть раздражающими и постоянными, но это не совсем безнадежно, существует возможность ремонта. Вот способы сделать это.
Если метод ремонта вам подошел, пожалуйста, нажмите кнопку 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, вы можете сделать следующее:
- Сбросьте настройки браузера.
- В Windows 7 вы можете нажать «Пуск», перейти в «Панель управления» и нажать «Свойства обозревателя» слева. Затем вы можете перейти на вкладку «Дополнительно» и нажать кнопку «Сброс».
- Для Windows 8 и 10 вы можете нажать «Поиск» и ввести «Свойства обозревателя», затем перейти на вкладку «Дополнительно» и нажать «Сброс».
- Отключить отладку скриптов и уведомления об ошибках.
- В том же окне «Свойства обозревателя» можно перейти на вкладку «Дополнительно» и найти пункт «Отключить отладку сценария».
- Установите флажок в переключателе.
- Одновременно снимите флажок «Отображать уведомление о каждой ошибке сценария», затем нажмите «Применить» и «ОК», затем перезагрузите компьютер.
Если эти быстрые исправления не работают, вы всегда можете сделать резервную копию файлов и запустить восстановление на вашем компьютере. Однако вы можете сделать это позже, когда перечисленные здесь решения не сработают.
Другие языки:
How to fix Error 3421 (Microsoft Access Error 3421) — Data type conversion error.
Wie beheben Fehler 3421 (Microsoft Access-Fehler 3421) — Fehler bei der Datentypkonvertierung.
Come fissare Errore 3421 (Errore di Microsoft Access 3421) — Errore di conversione del tipo di dati.
Hoe maak je Fout 3421 (Microsoft Access-fout 3421) — Conversiefout van gegevenstype.
Comment réparer Erreur 3421 (Erreur d’accès Microsoft 3421) — Erreur de conversion de type de données.
어떻게 고치는 지 오류 3421 (마이크로소프트 액세스 오류 3421) — 데이터 유형 변환 오류입니다.
Como corrigir o Erro 3421 (Erro 3421 do Microsoft Access) — Erro de conversão de tipo de dados.
Hur man åtgärdar Fel 3421 (Microsoft Access-fel 3421) — Konverteringsfel för datatyp.
Jak naprawić Błąd 3421 (Błąd Microsoft Access 3421) — Błąd konwersji typu danych.
Cómo arreglar Error 3421 (Error de Microsoft Access 3421) — Error de conversión de tipo de datos.
Об авторе: Фил Харт является участником сообщества Microsoft с 2010 года. С текущим количеством баллов более 100 000 он внес более 3000 ответов на форумах Microsoft Support и создал почти 200 новых справочных статей в Technet Wiki.
Следуйте за нами:
Последнее обновление:
15/12/22 12:20 : Пользователь iPhone проголосовал за то, что метод восстановления 3 работает для него.
Рекомендуемый инструмент для ремонта:
Этот инструмент восстановления может устранить такие распространенные проблемы компьютера, как синие экраны, сбои и замораживание, отсутствующие DLL-файлы, а также устранить повреждения от вредоносных программ/вирусов и многое другое путем замены поврежденных и отсутствующих системных файлов.
ШАГ 1:
Нажмите здесь, чтобы скачать и установите средство восстановления Windows.
ШАГ 2:
Нажмите на Start Scan и позвольте ему проанализировать ваше устройство.
ШАГ 3:
Нажмите на Repair All, чтобы устранить все обнаруженные проблемы.
СКАЧАТЬ СЕЙЧАС
Совместимость
Требования
1 Ghz CPU, 512 MB RAM, 40 GB HDD
Эта загрузка предлагает неограниченное бесплатное сканирование ПК с Windows. Полное восстановление системы начинается от $19,95.
ID статьи: ACX06851RU
Применяется к: Windows 10, Windows 8.1, Windows 7, Windows Vista, Windows XP, Windows 2000
Совет по увеличению скорости #10
Очистка вашего реестра:
Ускорьте работу своего компьютера, удалив неработающие ярлыки, недопустимые пути, недопустимые ссылки на установщик, отсутствующие общие библиотеки DLL и многое другое из системного реестра. Однако большинство очистителей реестра не так эффективны, как вы могли бы подумать. Итак, лучше проведите небольшое исследование и выберите тот, который работает лучше всего. Кроме того, всегда создавайте резервную копию, создавая новую точку восстановления системы.
Нажмите здесь, чтобы узнать о другом способе ускорения работы ПК под управлением Windows
- Remove From My Forums
-
Question
-
We have VBA code that runs a query on an sql database and saves the results to a local table.
We started getting an error in the insert into the local table
Run-time error ‘3421’
Data type conversion error.
This error goes away if the access version is changed to the bi annual channel.
If you open the debug screen and go to see what value is causing the problem access crashes.
Answers
-
Maybe you have been hit by a bug in the recent update commented by Microsoft:
If you are on version 2005, build 12827.20010 or greater, and you manipulate Decimal fields (Access DataType=Number/FieldSize=Decimal, or SQL DataType=Decimal) using DAO (Data
Access Objects), you might have identified your app crashing. If you hover a variable with the type in VBA code, you may see that the field is not being displayed properly; either reading as ‘?????’ or giving a Type Mismatch error,
or Access may crash.We are very sorry for the inconvenience this causes in your Access app. The Access team is working on resolving this issue as soon as possible, and we will report back to you once this error has been fixed.
In the interim, we’d recommend for you to roll back to a previous version (https://support.microsoft.com/en-us/help/2770432/how-to-revert-to-an-earlier-version-of-office-2013-or-office-2016-clic),
or switch to a slower channel (e.g Monthly Enterprise Channel, or SemiAnnual Channel), until the issue is fixed in Current Channel. The issue only impacts Decimal types so if avoiding DAO code that manipulates Decimal types is possible, we’d advise this
as a short term solution.If so, try changing the data type to Currency or Double.
Gustav Brock
- Marked as answer by
Wednesday, June 10, 2020 8:16 AM
- Marked as answer by
- Remove From My Forums
-
Question
-
We have VBA code that runs a query on an sql database and saves the results to a local table.
We started getting an error in the insert into the local table
Run-time error ‘3421’
Data type conversion error.
This error goes away if the access version is changed to the bi annual channel.
If you open the debug screen and go to see what value is causing the problem access crashes.
Answers
-
Maybe you have been hit by a bug in the recent update commented by Microsoft:
If you are on version 2005, build 12827.20010 or greater, and you manipulate Decimal fields (Access DataType=Number/FieldSize=Decimal, or SQL DataType=Decimal) using DAO (Data
Access Objects), you might have identified your app crashing. If you hover a variable with the type in VBA code, you may see that the field is not being displayed properly; either reading as ‘?????’ or giving a Type Mismatch error,
or Access may crash.We are very sorry for the inconvenience this causes in your Access app. The Access team is working on resolving this issue as soon as possible, and we will report back to you once this error has been fixed.
In the interim, we’d recommend for you to roll back to a previous version (https://support.microsoft.com/en-us/help/2770432/how-to-revert-to-an-earlier-version-of-office-2013-or-office-2016-clic),
or switch to a slower channel (e.g Monthly Enterprise Channel, or SemiAnnual Channel), until the issue is fixed in Current Channel. The issue only impacts Decimal types so if avoiding DAO code that manipulates Decimal types is possible, we’d advise this
as a short term solution.If so, try changing the data type to Currency or Double.
Gustav Brock
- Marked as answer by
Wednesday, June 10, 2020 8:16 AM
- Marked as answer by
Описание и решение проблемы
Проблема: при обмене с сервером ЕИС, в протоколе обмена диагностируется сообщение: «Ошибка обмена (p2): 3421 — Ошибка преобразования типа данных.»
Причина: скорее всего, проблема с одной из БД ЕИС «еНот».
Способ решения: выполните следующие действия:
1. в eNot.ini, в раздел [Settings] добавьте следующие строки:
LogLevel=100
DebugLevel=100
2. запустите «еНот», несколько раз выполните обмен (меню «Обмен» – «Выполнить все F5») с сервером и пришлите на электронный адрес службы поддержки, архивированный каталог: C:Program FilesTriasofteNotLog201010 (где 2010 — текущий год, 10 — текущий месяц);
3. после чего удалите строки указанные в пункте 1 из файла eNot.ini. К отправляемому письму приложите снимок ошибки или ее текст с указанием действий предшествующих данной ошибке.
Подробности статьи
|
|||
|
|||
Номер ошибки: | Ошибка 3421 | |
Название ошибки: | Microsoft Access Error 3421 | |
Описание ошибки: | Data type conversion error. | |
Разработчик: | Microsoft Corporation | |
Программное обеспечение: | Microsoft Access | |
Относится к: | Windows XP, Vista, 7, 8, 10, 11 |
Оценка «Microsoft Access Error 3421»
Как правило, практикующие ПК и сотрудники службы поддержки знают «Microsoft Access Error 3421» как форму «ошибки во время выполнения». Разработчики тратят много времени и усилий на написание кода, чтобы убедиться, что Microsoft Access стабилен до продажи продукта. Тем не менее, возможно, что иногда ошибки, такие как ошибка 3421, не устранены, даже на этом этапе.
«Data type conversion error.» может возникнуть у пользователей Microsoft Access даже при нормальном использовании приложения. Во время возникновения ошибки 3421 конечный пользователь может сообщить о проблеме в Microsoft Corporation. Затем Microsoft Corporation нужно будет исправить эти ошибки в главном исходном коде и предоставить модифицированную версию для загрузки. Чтобы исправить такие ошибки 3421 ошибки, устанавливаемое обновление программного обеспечения будет выпущено от поставщика программного обеспечения.
У вас будет сбой во время выполнения Microsoft Access, если вы столкнетесь с «Microsoft Access Error 3421» во время выполнения. Следующие три наиболее значимые причины ошибок выполнения ошибки 3421 включают в себя:
Ошибка 3421 Crash — Номер ошибки вызовет блокировка системы компьютера, препятствуя использованию программы. Обычно это происходит, когда Microsoft Access не может распознать, что ему дается неправильный ввод, или не знает, что он должен производить.
Утечка памяти «Microsoft Access Error 3421» — когда происходит утечка памяти Microsoft Access, это приведет к вялой работе операционной системы из-за нехватки системных ресурсов. Повреждение памяти и другие потенциальные ошибки в коде могут произойти, когда память обрабатывается неправильно.
Ошибка 3421 Logic Error — логическая ошибка Microsoft Access возникает, когда она производит неправильный вывод, несмотря на то, что пользователь предоставляет правильный ввод. Это происходит, когда исходный код Microsoft Corporation вызывает недостаток в обработке информации.
Microsoft Access Error 3421 проблемы часто являются результатом отсутствия, удаления или случайного перемещения файла из исходного места установки Microsoft Access. Возникновение подобных проблем является раздражающим фактором, однако их легко устранить, заменив файл Microsoft Corporation, из-за которого возникает проблема. Если ошибка Microsoft Access Error 3421 возникла в результате его удаления по причине заражения вредоносным ПО, мы рекомендуем запустить сканирование реестра, чтобы очистить все недействительные ссылки на пути к файлам, созданные вредоносной программой.
Классические проблемы Microsoft Access Error 3421
Обнаруженные проблемы Microsoft Access Error 3421 с Microsoft Access включают:
- «Ошибка программного обеспечения Microsoft Access Error 3421. «
- «Microsoft Access Error 3421 не является программой Win32. «
- «Извините, Microsoft Access Error 3421 столкнулся с проблемой. «
- «Файл Microsoft Access Error 3421 не найден.»
- «Microsoft Access Error 3421 не может быть найден. «
- «Проблема при запуске приложения: Microsoft Access Error 3421. «
- «Файл Microsoft Access Error 3421 не запущен.»
- «Microsoft Access Error 3421 остановлен. «
- «Неверный путь к программе: Microsoft Access Error 3421. «
Обычно ошибки Microsoft Access Error 3421 с Microsoft Access возникают во время запуска или завершения работы, в то время как программы, связанные с Microsoft Access Error 3421, выполняются, или редко во время последовательности обновления ОС. Выделение при возникновении ошибок Microsoft Access Error 3421 имеет первостепенное значение для поиска причины проблем Microsoft Access и сообщения о них вMicrosoft Corporation за помощью.
Причины проблем Microsoft Access Error 3421
Проблемы Microsoft Access Error 3421 могут быть отнесены к поврежденным или отсутствующим файлам, содержащим ошибки записям реестра, связанным с Microsoft Access Error 3421, или к вирусам / вредоносному ПО.
В частности, проблемы с Microsoft Access Error 3421, вызванные:
- Недопустимые разделы реестра Microsoft Access Error 3421/повреждены.
- Зазаражение вредоносными программами повредил файл Microsoft Access Error 3421.
- Вредоносное удаление (или ошибка) Microsoft Access Error 3421 другим приложением (не Microsoft Access).
- Другое программное обеспечение, конфликтующее с Microsoft Access, Microsoft Access Error 3421 или общими ссылками.
- Поврежденная установка или загрузка Microsoft Access (Microsoft Access Error 3421).
Продукт Solvusoft
Загрузка
WinThruster 2022 — Проверьте свой компьютер на наличие ошибок.
Совместима с Windows 2000, XP, Vista, 7, 8, 10 и 11
Установить необязательные продукты — WinThruster (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия | Удаление
|
|
Список заполняется значениями из отдельной таблицы. Значение этого списка вставляется в таблицу транзакций как новая запись. Доступ выдает ошибку «Ошибка преобразования типа данных 3421», когда я пытаюсь присвоить значение списка моему параметру sql. Список имеет тип txtMealType, он вставляется как MealID, который представляет собой короткое текстовое поле.
Set dbs = CurrentDb
Dim vblMealType As String
txtMealType.SetFocus
vblMealType = txtMealType.Value
If (txtMealType & vbNullString) = vbNullString Then Exit Sub
Dim qdf As DAO.QueryDef
Set qdf = dbs.CreateQueryDef("", _
"PARAMETERS prmCustomerID Long, prmMealID Long, prmTransactionAmount Currency, prmTransactionDate DateTime;" & _
"INSERT INTO dbo_Transactions (CustomerID, MealID, TransactionAmount, TransactionDate) " & _
"VALUES ([prmCustomerID], [prmMealID], [prmTransactionAmount], [prmTransactionDate]) ")
qdf!prmCustomerID = txtCustomerID.Value
qdf!prmTransactionAmount = txtCharge.Value
txtCharge.SetFocus
qdf!prmTransactionDate = Format(Date, "yyyy-mm-dd")
qdf!prmMealID = vblMealType
qdf.Execute
MsgBox "Customer Charge Succesfull.", _
vbOKOnly + vbInformation
Set qdf = Nothing
Set dbs = Nothing
I have been using a vba code to make my work life easier but for some reason it stopped working as supposed to. What it does it gets a number from my DB and goes to website to find relevant certificate assigned to this number (company), then it reads the grade and expiry date which are to be recorded in same DB. The issue is now when it goes to
rs.fields(«Expiry»).Value = Split(sResult, «|»)(1)
it throws a Runtime error 3421 which i believe is due to column being formatted as for date data type but it worked correctly for several months..? It work when changed data type to text however that will mess it up as later I use it in queries and reports and need it as a date.
Any ideas why it changed and how to fix it please?
Thanks
MD
Sub Get_BRCDirectory_Data()
Dim sCode, rs As DAO.Recordset, dic As Object, sResult As String, i As Long
Set dic = CreateObject("Scripting.Dictionary")
dic.CompareMode = 1
Set rs = CurrentDb.OpenRecordset("Approved")
If Not (rs.BOF And rs.EOF) Then
rs.MoveFirst
Do
sCode = rs.fields("SupplierCode").Value
If sCode <> "" Then
If Not dic.Exists(sCode) Then
sResult = GetGradeExpiryDate(CStr(sCode))
rs.Edit
rs.fields("Grade").Value = Trim(Split(sResult, "|")(0))
rs.fields("Expiry").Value = Split(sResult, "|")(1)
rs.UPDATE
dic(sCode) = Array(rs.fields("Grade").Value, rs.fields("Expiry").Value)
Else
rs.Edit
rs.fields("Grade").Value = dic(sCode)(0)
rs.fields("Expiry").Value = dic(sCode)(1)
rs.UPDATE
End If
End If
rs.MoveNext
Loop Until rs.EOF
End If
MsgBox "Done", 64
«Ошибка обмена (p2): 3421 — Ошибка преобразования типа данных.» | |
Описание и решение проблемы
Проблема: при обмене с сервером ЕИС, в протоколе обмена диагностируется сообщение: «Ошибка обмена (p2): 3421 — Ошибка преобразования типа данных.»
Причина: скорее всего, проблема с одной из БД ЕИС «еНот».
Способ решения: выполните следующие действия:
1. в eNot.ini, в раздел [Settings] добавьте следующие строки:
LogLevel=100
DebugLevel=100
2. запустите «еНот», несколько раз выполните обмен (меню «Обмен» – «Выполнить все F5») с сервером и пришлите на электронный адрес службы поддержки, архивированный каталог: C:Program FilesTriasofteNotLog201010 (где 2010 — текущий год, 10 — текущий месяц);
3. после чего удалите строки указанные в пункте 1 из файла eNot.ini. К отправляемому письму приложите снимок ошибки или ее текст с указанием действий предшествующих данной ошибке.
Подробности статьи
|
|
||||
|
|||
|
Войти | [Пароль утерян] | |||||||
|
||||||||
Поиск | ||||||||
|
||||||||
Свойства статьи | ||||||||
Оставьте отзыв Распечатать статью PDF версия Послать статью по почте Добавить в избранное |
- Remove From My Forums
-
Question
-
Hello, trying to run Db.QueryDefs to pull data from a query and receiving Run time error. Changed data set (
Dim sQuery As String) to Long, Double, String and still giving me an error. The data that I need is «string» or «number» like 19.20 or so.
Thank you and have a good day!
Dim Db As Database ‘current database
Dim RS As Recordset ‘holds query result
Dim sQuery As String
Dim sPercentage As String
Dim qdf As QueryDefSet Db = CurrentDb()
Set qdf = Db.QueryDefs(«qryPercentage»)
sQuery = «SELECT qryPercentage.Convert FROM qryPercentage;»
Set RS = qdf.OpenRecordset(sQuery)
sPercentage = RS.Fields(«Convert»).Value
JayZ
-
Edited by
Monday, November 2, 2020 8:06 PM
-
Edited by
Answers
-
Thank you so much for those of you who assisted me with this. Have a great day!
This is a link that Microsoft MVP suggested (See https://www.devhut.net/2011/11/07/ms-access-vba-run-parameter-query-in-vba/)
Is working now.
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
Dim prm As DAO.Parameter
Dim rs As DAO.Recordset
Dim sPercentage As IntegerSet db = CurrentDb
Set qdf = db.QueryDefs(«qryPercentage»)
For Each prm In qdf.Parameters
prm = Eval(prm.Name)
Debug.Print prm.Name
Next prmSet rs = qdf.OpenRecordset
‘Work with the recordset
sPercentage = rs.Fields(«Convert»).Value
JayZ
-
Marked as answer by
Radio Fixer
Monday, November 9, 2020 3:53 PM
-
Marked as answer by
Ага… и что еще ты ожидаешь? Действительно, «конвертировать» 31 июня невозможно!
Итак, оперативный вопрос: «И что теперь?»
«Да… вот в чем дело…»
Что вам нужно сделать, это настроить блок обработки ошибок времени выполнения (» on error goto
… resume next
«в Visual Basic), которая будет перехватывать это исключение всякий раз, когда оно может быть выброшено.
КСТАТИ: причина, по которой все происходит так, заключается в том, что «в 99,9% случаев преобразование будет успешным, пока пользователь не нажмет клавишу». Следовательно, толстые пальцы — это » исключение», которое должно быть очень эффективно рассматривается как таковой. Вместо того, чтобы обременять наш код постоянными (!) Проверками, чтобы увидеть, удалось ли преобразование даты… с потенциально ужасными (!!) последствиями, если мы не сможем включить хотя бы один несчастный тест… мы используем исключение-бросок механизм для выделения (редких) случаев, когда это не так.
Следовательно, «если вы» придете к следующему утверждению «», вы можете быть уверены (!), Что преобразование прошло успешно, потому что «если бы этого не произошло, вы бы (сразу…) не были бы здесь».
Вместо того, чтобы сообщать вам об их ошибках с помощью кода возврата, который обязывает вас «проверять каждый из них, каждый (!) Раз, более или менее под страхом смерти», функции обрабатывают «исключения из правила». ”Как исключения, которые они… и обязывают вас быть готовыми“ поймать ”их.