Все доброй ночи!
Очень извиняюсь, что касаюсь избитой темы (наверное), но что-то я не смог найти ответа в таком форуме, хотя регулярно пользуюсь подсказками пользователей. До сей поры хватало.
Суть вот в чем:
Я хочу из существующей таблицы Excel выдернуть отсортированные значения и вставить их в Word. Казалось бы, что может быть проще:
Sub Import2()
‘
‘
‘
Mesyats = UserForm1.ComboBox1.Value
‘Mesyats = «Ноябрь»
Dim iLastRow As Long
Excel.Sheets(«123»).Select
iLastRow = Cells(Rows.Count, 1).End(xlUp).Row
Excel.ActiveSheet.ListObjects(«Таблица 3»).Range.AutoFilter Field:=1, Criteria1:=Mesyats
Excel.Range(«B3:D» + Right((Str(iLastRow)), (Len(Str(iLastRow) — 1)))).Select
Excel.Selection.Copy
Excel.Sheets(«123»).Select
On Error GoTo ErrStartWord
Dim Wda As Word.Application
Set Wda = GetObject(, «Word.Application»)
Set Wda = Nothing
‘If Tasks.Exists(«Microsoft Word») Then
‘End If
‘Word.Application.Documents.Item
Word.Documents.Open Filename:=»c:OLS ReportsForm 2.docx»
Word.Application.Activate
Word.Selection.StartOf Unit:=wdStory, Extend:=wdMove
Word.Selection.MoveDown Unit:=wdLine, Count:=9
Word.Selection.MoveLeft Unit:=wdCharacter, Count:=17
Word.Selection.Delete Unit:=wdCharacter, Count:=7
Word.Selection.TypeText (Mesyats)
Word.Selection.MoveEnd
Word.Selection.MoveDown Unit:=wdLine, Count:=6
Word.Selection.MoveLeft Unit:=wdCharacter, Count:=1
WordBasic.EditPaste2
‘Word.Application.Dialogs(wdDialogFileSaveAs).Show
‘Word.Documents.Close
ErrStartWord:
If Err.Number = 429 Then ‘ Word не запущен
Dim appWD As Object
Set appWD = CreateObject(«Word.Application»)
appWD.Visible = True
Resume Next
End If
If Err.Number = 0 Then
‘MsgBox «Success!»
Else: MsgBox Err.Description & » » & Err.Number, vblnformation
End If
End Sub
Однако не тут-то было (((
При повторном запуске скрипт срубается на строке «Word.Documents.Open Filename:=»c:OLS ReportsForm 2.docx»»
с сообщением «The remote server machine does not exist or is unavailable 462», как и положено обработчику ошибок в теле сркипта. Надо полностью закрыть Excel и заново в него зайти. Тогда вновь все заработает, на 1 раз :/ Я так думаю, что скрипт по завершению не очищает какие-то переменные, и нужно выйти из Excel.
Очень надо сделать, работа горит. Сижу уже 4-й час, и ничего не могу поделать ((((
И да. Использую Word 2007 и Excel 2007. Как думаете, в 2003 офисе такой проблемы не возникнет? А то будет жаль перставлять из-за этого…..
Все харанее спасибо.
Номер ошибки: | Ошибка 462 | |
Название ошибки: | Excel Error 462 | |
Описание ошибки: | Ошибка 462: Возникла ошибка в приложении Microsoft Excel. Приложение будет закрыто. Приносим извинения за неудобства. | |
Разработчик: | Microsoft Corporation | |
Программное обеспечение: | Microsoft Excel | |
Относится к: | Windows XP, Vista, 7, 8, 10, 11 |
Анализ «Excel Error 462»
«Excel Error 462» — это стандартная ошибка времени выполнения. Разработчики тратят много времени и усилий на написание кода, чтобы убедиться, что Microsoft Excel стабилен до продажи продукта. К сожалению, некоторые критические проблемы, такие как ошибка 462, часто могут быть упущены из виду.
После установки программного обеспечения может появиться сообщение об ошибке «Excel Error 462». В случае обнаруженной ошибки 462 клиенты могут сообщить о наличии проблемы Microsoft Corporation по электронной почте или сообщать об ошибках. Затем Microsoft Corporation нужно будет исправить эти ошибки в главном исходном коде и предоставить модифицированную версию для загрузки. Эта ситуация происходит из-за обновления программного обеспечения Microsoft Excel является одним из решений ошибок 462 ошибок и других проблем.
Почему возникает ошибка времени выполнения 462?
У вас будет сбой во время выполнения Microsoft Excel, если вы столкнетесь с «Excel Error 462» во время выполнения. Причины сбоев обработки можно отличить, классифицируя ошибки 462 следующим образом:.
Ошибка 462 Crash — это типичная ошибка 462 во время выполнения, которая полностью аварийно завершает работу компьютера. Эти ошибки обычно возникают, когда входы Microsoft Excel не могут быть правильно обработаны, или они смущены тем, что должно быть выведено.
«Excel Error 462» Утечка памяти — Ошибка 462 утечка памяти происходит и предоставляет Microsoft Excel в качестве виновника, перетаскивая производительность вашего ПК. Возможные искры включают сбой освобождения, который произошел в программе, отличной от C ++, когда поврежденный код сборки неправильно выполняет бесконечный цикл.
Ошибка 462 Logic Error — Логическая ошибка вызывает неправильный вывод, даже если пользователь дал действительные входные данные. Когда точность исходного кода Microsoft Corporation низкая, он обычно становится источником ошибок.
Excel Error 462 проблемы часто являются результатом отсутствия, удаления или случайного перемещения файла из исходного места установки Microsoft Excel. Как правило, самый лучший и простой способ устранения ошибок, связанных с файлами Microsoft Corporation, является замена файлов. Если ошибка Excel Error 462 возникла в результате его удаления по причине заражения вредоносным ПО, мы рекомендуем запустить сканирование реестра, чтобы очистить все недействительные ссылки на пути к файлам, созданные вредоносной программой.
Распространенные проблемы Excel Error 462
Типичные ошибки Excel Error 462, возникающие в Microsoft Excel для Windows:
- «Ошибка программы Excel Error 462. «
- «Excel Error 462 не является приложением Win32.»
- «Возникла ошибка в приложении Excel Error 462. Приложение будет закрыто. Приносим извинения за неудобства.»
- «К сожалению, мы не можем найти Excel Error 462. «
- «Excel Error 462 не может быть найден. «
- «Ошибка запуска программы: Excel Error 462.»
- «Excel Error 462 не выполняется. «
- «Excel Error 462 остановлен. «
- «Excel Error 462: путь приложения является ошибкой. «
Проблемы Excel Error 462 с участием Microsoft Excels возникают во время установки, при запуске или завершении работы программного обеспечения, связанного с Excel Error 462, или во время процесса установки Windows. При появлении ошибки Excel Error 462 запишите вхождения для устранения неполадок Microsoft Excel и чтобы HelpMicrosoft Corporation найти причину.
Excel Error 462 Истоки проблем
Проблемы Excel Error 462 могут быть отнесены к поврежденным или отсутствующим файлам, содержащим ошибки записям реестра, связанным с Excel Error 462, или к вирусам / вредоносному ПО.
Особенно ошибки Excel Error 462 проистекают из:
- Поврежденная или недопустимая запись реестра Excel Error 462.
- Загрязненный вирусом и поврежденный Excel Error 462.
- Другая программа злонамеренно или по ошибке удалила файлы, связанные с Excel Error 462.
- Другая программа находится в конфликте с Microsoft Excel и его общими файлами ссылок.
- Microsoft Excel/Excel Error 462 поврежден от неполной загрузки или установки.
Продукт Solvusoft
Загрузка
WinThruster 2022 — Проверьте свой компьютер на наличие ошибок.
Совместима с Windows 2000, XP, Vista, 7, 8, 10 и 11
Установить необязательные продукты — WinThruster (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия | Удаление
First problem : Run-time error ‘462’ : The remote server machine does not exist or is unavailable.
The issue here is the use of :
- Late Biding :
Dim Smthg As Object
or - Implicit references :
Dim Smthg As Range
instead of
Dim Smthg As Excel.Range
orDim Smthg As Word.Range
So you need to fully qualified all the variables that you set (I’ve done that in your code)
Second problem
You work with multiple instances of Word and you only need one to handle multiple documents.
So instead of creating a new one each time with :
Set WordApp = CreateObject("Word.Application")
You can get an open instance (if there is one) or create one with that code :
On Error Resume Next
Set WordApp = GetObject(, "Word.Application")
If Err.Number > 0 Then Set WordApp = CreateObject("Word.Application")
On Error GoTo 0
And once you’ve put this at the start of your proc, you can use this instance until the end of the proc and before the end, quit it to avoid having multiple instances running.
Here is your code reviewed and cleaned, take a look :
Sub Docs()
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
' Control if folder exists, if not create folder
If Len(Dir("F:documents" & Year(Date), vbDirectory)) = 0 Then MkDir "F:documents" & Year(Date)
' Get or Create a Word Instance
On Error Resume Next
Set WordApp = GetObject(, "Word.Application")
If Err.Number > 0 Then Set WordApp = CreateObject("Word.Application")
On Error GoTo 0
Workbooks("exampleworkbook.xlsm").Sheets("examplesheet").Range("A1:C33").Copy
With WordApp
.Visible = True
.Activate
Set WordDoc = .Documents.Add
.Selection.PasteSpecial Link:=False, DataType:=wdPasteRTF, _
Placement:=wdInLine, DisplayAsIcon:=False
End With
With Application
.Wait (Now + TimeValue("0:00:02"))
.CutCopyMode = False
End With
With WordDoc
.PageSetup.TopMargin = WordApp.CentimetersToPoints(1.4)
.PageSetup.LeftMargin = WordApp.CentimetersToPoints(1.5)
.PageSetup.BottomMargin = WordApp.CentimetersToPoints(1.5)
.SaveAs "F:documents" & Year(Date) & "examplename " & Format(Now, "YYYYMMDD") & ".docx"
.Close
End With
' export sheet 2 to Word
Workbooks("exampleworkbook.xlsm").Sheets("examplesheet2").Range("A1:C33").Copy
Set WordDoc = WordApp.Documents.Add
WordApp.Selection.PasteSpecial Link:=False, DataType:=wdPasteRTF, _
Placement:=wdInLine, DisplayAsIcon:=False
Application.Wait (Now + TimeValue("0:00:02"))
With WordDoc
.PageSetup.LeftMargin = WordApp.CentimetersToPoints(1.5)
.PageSetup.TopMargin = WordApp.CentimetersToPoints(1.4)
.PageSetup.BottomMargin = WordApp.CentimetersToPoints(1.5)
.SaveAs "F:files" & Year(Date) & "name" & Format(Now, "YYYYMMDD") & ".docx"
.Close
End With
Application.CutCopyMode = False
WordApp.Quit
Set WordDoc = Nothing
Set WordApp = Nothing
' Variables Outlook
Dim objOutlook As Outlook.Application
Dim objMail As Outlook.MailItem
Dim rngTo As Excel.Range
Dim rngCc As Excel.Range
Dim rngSubject As Excel.Range
Dim rngBody As Excel.Range
Dim rngAttach1 As Excel.Range
Dim rngAttach2 As Excel.Range
Dim numSend As Integer
On Error Resume Next
Set objOutlook = GetObject(, "Outlook.Application")
If Err.Number > 0 Then Set objOutlook = CreateObject("Outlook.Application")
On Error GoTo 0
Set objMail = objOutlook.CreateItem(0)
' Outlook
On Error GoTo handleError
With Sheets("Mail")
Set rngTo = .Range("B11")
Set rngCc = .Range("B12")
Set rngSubject = .Range("B13")
Set rngBody = .Range("B14")
Set rngAttach1 = .Range("B15")
Set rngAttach2 = .Range("B16")
End With
With objMail
.To = rngTo.Value
.Subject = rngSubject.Value
.CC = rngCc.Value
'.Body = rngBody.Value
.Body = "Hi," & _
vbNewLine & vbNewLine & _
rngBody.Value & _
vbNewLine & vbNewLine & _
"Kind regards,"
.Attachments.Add rngAttach1.Value
.Attachments.Add rngAttach2.Value
.Display
Application.Wait (Now + TimeValue("0:00:01"))
Application.SendKeys "%s"
' .Send ' Instead of .Display, you can use .Send to send the email _
or .Save to save a copy in the drafts folder
End With
numSend = numSend + 1
GoTo skipError
handleError:
numErr = numErr + 1
oFile.WriteLine "*** ERROR *** Email for account" & broker & " not sent. Error: " & Err.Number & " " & Err.Description
skipError:
On Error GoTo 0
MsgBox "Sent emails: " & numSend & vbNewLine & "Number of errors: " & numErr, vbOKOnly + vbInformation, "Operation finished"
GoTo endProgram
cancelProgram:
MsgBox "No mails were sent.", vbOKOnly + vbExclamation, "Operation cancelled"
endProgram:
Set objOutlook = Nothing
Set objMail = Nothing
Set rngTo = Nothing
Set rngSubject = Nothing
Set rngBody = Nothing
Set rngAttach1 = Nothing
Set rngAttach2 = Nothing
End Sub
В этой статье представлена ошибка с номером Ошибка 462, известная как Ошибка Excel 462, описанная как Ошибка 462: Возникла ошибка в приложении Microsoft Excel. Приложение будет закрыто. Приносим свои извинения за неудобства.
О программе Runtime Ошибка 462
Время выполнения Ошибка 462 происходит, когда Microsoft Excel дает сбой или падает во время запуска, отсюда и название. Это не обязательно означает, что код был каким-то образом поврежден, просто он не сработал во время выполнения. Такая ошибка появляется на экране в виде раздражающего уведомления, если ее не устранить. Вот симптомы, причины и способы устранения проблемы.
Определения (Бета)
Здесь мы приводим некоторые определения слов, содержащихся в вашей ошибке, в попытке помочь вам понять вашу проблему. Эта работа продолжается, поэтому иногда мы можем неправильно определить слово, так что не стесняйтесь пропустить этот раздел!
- Excel — только для вопросов по программированию с объектами или файлами Excel или по разработке сложных формул.
Симптомы Ошибка 462 — Ошибка Excel 462
Ошибки времени выполнения происходят без предупреждения. Сообщение об ошибке может появиться на экране при любом запуске %программы%. Фактически, сообщение об ошибке или другое диалоговое окно может появляться снова и снова, если не принять меры на ранней стадии.
Возможны случаи удаления файлов или появления новых файлов. Хотя этот симптом в основном связан с заражением вирусом, его можно отнести к симптомам ошибки времени выполнения, поскольку заражение вирусом является одной из причин ошибки времени выполнения. Пользователь также может столкнуться с внезапным падением скорости интернет-соединения, но, опять же, это не всегда так.
(Только для примера)
Причины Ошибка Excel 462 — Ошибка 462
При разработке программного обеспечения программисты составляют код, предвидя возникновение ошибок. Однако идеальных проектов не бывает, поскольку ошибки можно ожидать даже при самом лучшем дизайне программы. Глюки могут произойти во время выполнения программы, если определенная ошибка не была обнаружена и устранена во время проектирования и тестирования.
Ошибки во время выполнения обычно вызваны несовместимостью программ, запущенных в одно и то же время. Они также могут возникать из-за проблем с памятью, плохого графического драйвера или заражения вирусом. Каким бы ни был случай, проблему необходимо решить немедленно, чтобы избежать дальнейших проблем. Ниже приведены способы устранения ошибки.
Методы исправления
Ошибки времени выполнения могут быть раздражающими и постоянными, но это не совсем безнадежно, существует возможность ремонта. Вот способы сделать это.
Если метод ремонта вам подошел, пожалуйста, нажмите кнопку upvote слева от ответа, это позволит другим пользователям узнать, какой метод ремонта на данный момент работает лучше всего.
Обратите внимание: ни ErrorVault.com, ни его авторы не несут ответственности за результаты действий, предпринятых при использовании любого из методов ремонта, перечисленных на этой странице — вы выполняете эти шаги на свой страх и риск.
Метод 1 — Закройте конфликтующие программы
Когда вы получаете ошибку во время выполнения, имейте в виду, что это происходит из-за программ, которые конфликтуют друг с другом. Первое, что вы можете сделать, чтобы решить проблему, — это остановить эти конфликтующие программы.
- Откройте диспетчер задач, одновременно нажав Ctrl-Alt-Del. Это позволит вам увидеть список запущенных в данный момент программ.
- Перейдите на вкладку «Процессы» и остановите программы одну за другой, выделив каждую программу и нажав кнопку «Завершить процесс».
- Вам нужно будет следить за тем, будет ли сообщение об ошибке появляться каждый раз при остановке процесса.
- Как только вы определите, какая программа вызывает ошибку, вы можете перейти к следующему этапу устранения неполадок, переустановив приложение.
Метод 2 — Обновите / переустановите конфликтующие программы
Использование панели управления
- В Windows 7 нажмите кнопку «Пуск», затем нажмите «Панель управления», затем «Удалить программу».
- В Windows 8 нажмите кнопку «Пуск», затем прокрутите вниз и нажмите «Дополнительные настройки», затем нажмите «Панель управления»> «Удалить программу».
- Для Windows 10 просто введите «Панель управления» в поле поиска и щелкните результат, затем нажмите «Удалить программу».
- В разделе «Программы и компоненты» щелкните проблемную программу и нажмите «Обновить» или «Удалить».
- Если вы выбрали обновление, вам просто нужно будет следовать подсказке, чтобы завершить процесс, однако, если вы выбрали «Удалить», вы будете следовать подсказке, чтобы удалить, а затем повторно загрузить или использовать установочный диск приложения для переустановки. программа.
Использование других методов
- В Windows 7 список всех установленных программ можно найти, нажав кнопку «Пуск» и наведя указатель мыши на список, отображаемый на вкладке. Вы можете увидеть в этом списке утилиту для удаления программы. Вы можете продолжить и удалить с помощью утилит, доступных на этой вкладке.
- В Windows 10 вы можете нажать «Пуск», затем «Настройка», а затем — «Приложения».
- Прокрутите вниз, чтобы увидеть список приложений и функций, установленных на вашем компьютере.
- Щелкните программу, которая вызывает ошибку времени выполнения, затем вы можете удалить ее или щелкнуть Дополнительные параметры, чтобы сбросить приложение.
Метод 3 — Обновите программу защиты от вирусов или загрузите и установите последнюю версию Центра обновления Windows.
Заражение вирусом, вызывающее ошибку выполнения на вашем компьютере, необходимо немедленно предотвратить, поместить в карантин или удалить. Убедитесь, что вы обновили свою антивирусную программу и выполнили тщательное сканирование компьютера или запустите Центр обновления Windows, чтобы получить последние определения вирусов и исправить их.
Метод 4 — Переустановите библиотеки времени выполнения
Вы можете получить сообщение об ошибке из-за обновления, такого как пакет MS Visual C ++, который может быть установлен неправильно или полностью. Что вы можете сделать, так это удалить текущий пакет и установить новую копию.
- Удалите пакет, выбрав «Программы и компоненты», найдите и выделите распространяемый пакет Microsoft Visual C ++.
- Нажмите «Удалить» в верхней части списка и, когда это будет сделано, перезагрузите компьютер.
- Загрузите последний распространяемый пакет от Microsoft и установите его.
Метод 5 — Запустить очистку диска
Вы также можете столкнуться с ошибкой выполнения из-за очень нехватки свободного места на вашем компьютере.
- Вам следует подумать о резервном копировании файлов и освобождении места на жестком диске.
- Вы также можете очистить кеш и перезагрузить компьютер.
- Вы также можете запустить очистку диска, открыть окно проводника и щелкнуть правой кнопкой мыши по основному каталогу (обычно это C
- Щелкните «Свойства», а затем — «Очистка диска».
Метод 6 — Переустановите графический драйвер
Если ошибка связана с плохим графическим драйвером, вы можете сделать следующее:
- Откройте диспетчер устройств и найдите драйвер видеокарты.
- Щелкните правой кнопкой мыши драйвер видеокарты, затем нажмите «Удалить», затем перезагрузите компьютер.
Метод 7 — Ошибка выполнения, связанная с IE
Если полученная ошибка связана с Internet Explorer, вы можете сделать следующее:
- Сбросьте настройки браузера.
- В Windows 7 вы можете нажать «Пуск», перейти в «Панель управления» и нажать «Свойства обозревателя» слева. Затем вы можете перейти на вкладку «Дополнительно» и нажать кнопку «Сброс».
- Для Windows 8 и 10 вы можете нажать «Поиск» и ввести «Свойства обозревателя», затем перейти на вкладку «Дополнительно» и нажать «Сброс».
- Отключить отладку скриптов и уведомления об ошибках.
- В том же окне «Свойства обозревателя» можно перейти на вкладку «Дополнительно» и найти пункт «Отключить отладку сценария».
- Установите флажок в переключателе.
- Одновременно снимите флажок «Отображать уведомление о каждой ошибке сценария», затем нажмите «Применить» и «ОК», затем перезагрузите компьютер.
Если эти быстрые исправления не работают, вы всегда можете сделать резервную копию файлов и запустить восстановление на вашем компьютере. Однако вы можете сделать это позже, когда перечисленные здесь решения не сработают.
Другие языки:
How to fix Error 462 (Excel Error 462) — Error 462: Microsoft Excel has encountered a problem and needs to close. We are sorry for the inconvenience.
Wie beheben Fehler 462 (Excel-Fehler 462) — Fehler 462: Microsoft Excel hat ein Problem festgestellt und muss geschlossen werden. Wir entschuldigen uns für die Unannehmlichkeiten.
Come fissare Errore 462 (Errore di Excel 462) — Errore 462: Microsoft Excel ha riscontrato un problema e deve essere chiuso. Ci scusiamo per l’inconveniente.
Hoe maak je Fout 462 (Excel-fout 462) — Fout 462: Microsoft Excel heeft een probleem ondervonden en moet worden afgesloten. Excuses voor het ongemak.
Comment réparer Erreur 462 (Erreur Excel 462) — Erreur 462 : Microsoft Excel a rencontré un problème et doit se fermer. Nous sommes désolés du dérangement.
어떻게 고치는 지 오류 462 (엑셀 오류 462) — 오류 462: Microsoft Excel에 문제가 발생해 닫아야 합니다. 불편을 끼쳐드려 죄송합니다.
Como corrigir o Erro 462 (Erro do Excel 462) — Erro 462: O Microsoft Excel encontrou um problema e precisa fechar. Lamentamos o inconveniente.
Hur man åtgärdar Fel 462 (Excel-fel 462) — Fel 462: Microsoft Excel har stött på ett problem och måste avslutas. Vi är ledsna för besväret.
Jak naprawić Błąd 462 (Błąd Excela 462) — Błąd 462: Microsoft Excel napotkał problem i musi zostać zamknięty. Przepraszamy za niedogodności.
Cómo arreglar Error 462 (Error de Excel 462) — Error 462: Microsoft Excel ha detectado un problema y debe cerrarse. Lamentamos las molestias.
Об авторе: Фил Харт является участником сообщества Microsoft с 2010 года. С текущим количеством баллов более 100 000 он внес более 3000 ответов на форумах Microsoft Support и создал почти 200 новых справочных статей в Technet Wiki.
Следуйте за нами:
Этот инструмент восстановления может устранить такие распространенные проблемы компьютера, как синие экраны, сбои и замораживание, отсутствующие DLL-файлы, а также устранить повреждения от вредоносных программ/вирусов и многое другое путем замены поврежденных и отсутствующих системных файлов.
ШАГ 1:
Нажмите здесь, чтобы скачать и установите средство восстановления Windows.
ШАГ 2:
Нажмите на Start Scan и позвольте ему проанализировать ваше устройство.
ШАГ 3:
Нажмите на Repair All, чтобы устранить все обнаруженные проблемы.
СКАЧАТЬ СЕЙЧАС
Совместимость
Требования
1 Ghz CPU, 512 MB RAM, 40 GB HDD
Эта загрузка предлагает неограниченное бесплатное сканирование ПК с Windows. Полное восстановление системы начинается от $19,95.
ID статьи: ACX04265RU
Применяется к: Windows 10, Windows 8.1, Windows 7, Windows Vista, Windows XP, Windows 2000
Содержание
- Excel automation fails second time code runs
- Symptoms
- Cause
- Resolution
- Status
- More Information
- Steps to reproduce the behavior
- References
- Excel automation fails second time code runs
- Symptoms
- Cause
- Resolution
- Status
- More Information
- Steps to reproduce the behavior
- References
- Thread: RESOLVED: [VBA Word/Excel] Error 462 when running the code twice
- RESOLVED: [VBA Word/Excel] Error 462 when running the code twice
- Vba excel run time error 462
Excel automation fails second time code runs
Symptoms
While running code that uses Automation to control Microsoft Excel, one of the following errors may occur:
In Microsoft Excel 97 and in later versions of Excel, you receive one of the following error message:
Error message 1
Run-time error ‘1004’:
Method ‘ ‘ of object ‘_Global’ failed
Error message 2
Application-defined or object-defined error
In Microsoft Excel 95, you receive one of the following error messages:
Error message 1
Run-time error ‘-2147023174’
OLE Automation error
Error message 2
Run-time error ‘462’:
The remote server machine does not exist or is unavailable.
Cause
Visual Basic has established a reference to Excel because of a line of code that calls an Excel object, method, or property without qualifying the element with an Excel object variable. Visual Basic does not release this reference until you end the program. This errant reference interferes with automation code when the code is run more than one time.
Resolution
To resolve this problem, modify the code so each call to an Excel object, method, or property is qualified with the appropriate object variable.
Status
This behavior is by design.
More Information
To automate Microsoft Excel, you establish an object variable that usually refers to the Excel Application object or the Excel Workbook object. Other object variables can then be set to refer to a Worksheet, a Range, or other objects in the Microsoft Excel object model. When you write code to use an Excel object, method, or property, you should always precede the call with the appropriate object variable. If you do not, Visual Basic establishes its own reference to Excel. This reference might cause problems when you try to run the automation code multiple times. Note that even if the line of code begins with the object variable, a call may be made to an Excel object, method, or property in the middle of the line of code that is not preceded with an object variable.
The following steps illustrate how to reproduce this issue and how to correct the issue.
Steps to reproduce the behavior
Start a new Standard EXE project in Visual Basic. Form1 is created by default.
On the Project menu, click References, and then check the Object Library for the version of Excel that you intend to automate.
Place a CommandButton control on Form1.
Copy the following code example to the Code Window of Form1.
On the Run menu, click Start, or press F5 to start the program.
Click the CommandButton control. No error occurs. However, a reference to Excel has been created and has not been released.
Click the CommandButton control again. Notice that you receive one of the error messages that are discussed in the «Symptoms» section.
Note The error message occurs because the code refers to the method of the cell without preceding the call with the
xlSheet object variable.
Stop the project and change the following line of code:
Change the line of code to resemble the following line of code.
Run the program again. Notice that you can run the code multiple times without receiving an error message.
References
For more information, click the following article numbers to view the articles in the Microsoft Knowledge Base:
167223 Microsoft Office 97 Automation Help file available
189618 You may receive the «Run-time error ‘-2147023174’ (800706ba)» error message or the «Run-time error ‘462’» when you run Visual Basic code that uses Automation to control Word
Источник
Excel automation fails second time code runs
Symptoms
While running code that uses Automation to control Microsoft Excel, one of the following errors may occur:
In Microsoft Excel 97 and in later versions of Excel, you receive one of the following error message:
Error message 1
Run-time error ‘1004’:
Method ‘ ‘ of object ‘_Global’ failed
Error message 2
Application-defined or object-defined error
In Microsoft Excel 95, you receive one of the following error messages:
Error message 1
Run-time error ‘-2147023174’
OLE Automation error
Error message 2
Run-time error ‘462’:
The remote server machine does not exist or is unavailable.
Cause
Visual Basic has established a reference to Excel because of a line of code that calls an Excel object, method, or property without qualifying the element with an Excel object variable. Visual Basic does not release this reference until you end the program. This errant reference interferes with automation code when the code is run more than one time.
Resolution
To resolve this problem, modify the code so each call to an Excel object, method, or property is qualified with the appropriate object variable.
Status
This behavior is by design.
More Information
To automate Microsoft Excel, you establish an object variable that usually refers to the Excel Application object or the Excel Workbook object. Other object variables can then be set to refer to a Worksheet, a Range, or other objects in the Microsoft Excel object model. When you write code to use an Excel object, method, or property, you should always precede the call with the appropriate object variable. If you do not, Visual Basic establishes its own reference to Excel. This reference might cause problems when you try to run the automation code multiple times. Note that even if the line of code begins with the object variable, a call may be made to an Excel object, method, or property in the middle of the line of code that is not preceded with an object variable.
The following steps illustrate how to reproduce this issue and how to correct the issue.
Steps to reproduce the behavior
Start a new Standard EXE project in Visual Basic. Form1 is created by default.
On the Project menu, click References, and then check the Object Library for the version of Excel that you intend to automate.
Place a CommandButton control on Form1.
Copy the following code example to the Code Window of Form1.
On the Run menu, click Start, or press F5 to start the program.
Click the CommandButton control. No error occurs. However, a reference to Excel has been created and has not been released.
Click the CommandButton control again. Notice that you receive one of the error messages that are discussed in the «Symptoms» section.
Note The error message occurs because the code refers to the method of the cell without preceding the call with the
xlSheet object variable.
Stop the project and change the following line of code:
Change the line of code to resemble the following line of code.
Run the program again. Notice that you can run the code multiple times without receiving an error message.
References
For more information, click the following article numbers to view the articles in the Microsoft Knowledge Base:
167223 Microsoft Office 97 Automation Help file available
189618 You may receive the «Run-time error ‘-2147023174’ (800706ba)» error message or the «Run-time error ‘462’» when you run Visual Basic code that uses Automation to control Word
Источник
Thread: RESOLVED: [VBA Word/Excel] Error 462 when running the code twice
Thread Tools
Display
RESOLVED: [VBA Word/Excel] Error 462 when running the code twice
Hi, this is my first post, so if I’ve done something wrong like forgotten code tags or posted in the wrong section, please don’t yell at me
Before I explain the problem, I want to say that I am aware other people have posted this same problem, even on this website, but the solutions that seem to be working for everyone else have not worked for me. I have researched this problem for some 5 hours now and spent days trying to resolve it. Some examples of other threads that I have read with the same issue:
The issue is that I am writing code in VBA Word which calls an instance of Excel, does some stuff, and then closes Excel. Running the code again a second time usually results in the infamous error 462: «The remote server machine does not exist or is unavailable».
The Microsoft knowledge base (link above) advises to «Modify the code so that each call to a Word object, method, or property is qualified with the appropriate object variable.» I have gone through with a fine tooth comb and made sure that everything is qualified and referenced correctly and explicitly.
Furthermore, after reading the second article (link above) I have used late-binding on their suggestion to remove the issue of the Excel application continuing to run in the background after its supposed to be closed. I have found the [first instance of] offending line which causes the Excel app to continue to run, which, if omitted, makes the problem go away.
The code is quite lengthy so I will only post the relevant parts:
The code in red is where the error message appears when it is run a second time. However, it seems that Excel is reference properly here, so no idea why this is occurring. I have tried the following variations with no success:
Note that the above code is not resolving the original error of having the Excel app continuing to run in the background. I am in the middle of trying to fix this when I started getting the Error 462. To isolate the latter, add an early exit like:
Hope this makes sense, and hope someone can help, because I am at the end of my tether.
Last edited by Earlien; Jan 3rd, 2012 at 07:22 PM . Reason: Problem resolved
Источник
Vba excel run time error 462
Модератор форума: китин, _Boroda_
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос по созданию файла MS WORD. run-time error 462 (Макросы/Sub)
Макрос по созданию файла MS WORD. run-time error 462
rvshestakov | Дата: Четверг, 19.03.2015, 16:35 | Сообщение № 1 | |||||||||||||
|
0 / 0 / 0 Регистрация: 24.04.2018 Сообщений: 7 |
|
1 |
|
Excel 18.11.2018, 02:47. Показов 2167. Ответов 3
Доброй ночи
__________________
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
18.11.2018, 02:47 |
Ответы с готовыми решениями: Documents.Open метод, ошибка 462. Код работает через раз Код выполняется через раз Через раз работает Wi-Fi 3 |
asretyq 0 / 0 / 0 Регистрация: 24.04.2018 Сообщений: 7 |
||||||||||||
18.11.2018, 03:19 [ТС] |
2 |
|||||||||||
чтобы я как я не ковырялся 3 дня, может пригодится… перед
прописывается переменная на
точного ответа видимо вы не хотите давать… как-то усложняете речами…
0 |
6874 / 2806 / 533 Регистрация: 19.10.2012 Сообщений: 8,552 |
|
18.11.2018, 14:40 |
3 |
Вот смотрите — есть Нужно же как-то объяснить глупой машине что подразумевали…
при вставке из екселя в ворд Добавлено через 1 минуту
как-то усложняете речами.. а ведь никто и слова не сказал
0 |
0 / 0 / 0 Регистрация: 24.04.2018 Сообщений: 7 |
|
18.11.2018, 18:02 [ТС] |
4 |
Hugo121, о привет)) видел вас и на другом екселевском сайте))
0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
18.11.2018, 18:02 |
4 |
- Remove From My Forums
-
Question
-
I am trying to access a webpage from excel using VBA. I can get internet explorer to launch, and I see the webpage come up, but I get a runtime error 462 when I hit the Do Until internet.ReadyState >= 4 line of code. any ideas? ultimately I want to be able
to parse a site and get a list of the links on that site and pick one, and then «click» on that link. suggestions and help would be great. here is the function (that I found on the web) that I am using:Public Sub clicklick()
Dim internet As Object Dim internetdata As Object Dim div_result As Object Dim header_links As Object Dim link As Object Dim URL As String Set internet = CreateObject("InternetExplorer.Application") internet.Visible = True URL = "https://www.google.co.in/search?q=how+to+program+in+vba" internet.Navigate URL Do Until internet.ReadyState >= 4 DoEvents Loop Application.Wait Now + TimeSerial(0, 0, 5) Set internetdata = internet.Document Set div_result = internetdata.getelementbyid("res") Set header_links = div_result.getelementsbytagname("h3") For Each h In header_links Set link = h.ChildNodes.Item(0) Cells(Range("A" & Rows.count).End(xlUp).row + 1, 1) = link.href Next MsgBox "done"
End Sub
thank you, alan
Модератор:Naeel Maqsudov
-
Putincev
- Сообщения:38
- Зарегистрирован:10 май 2007, 16:06
Добрый день!
Перешел с MS Office 2003 на MS Office 2007, и получил огромную проблему.
При формировании программно файла Excel, с созданием в нем новых листов, при запуске во 2-ой раз, возникает ошибка — Run-time error ‘462’: «The remote server machine does not exist or is unavailable».
В 2003 такой ошибки не было, я перед запуском программы проверял на наличие в ОП Excel и удалял его (см. в приложении). А как отключить какой-то сервер я не знаю.
Для 2003 мне программист написал утилитку для удаления Excel из ОП и я этим пользовался, в 2007 эта утилитка работает, но Excel остается где-то в не доступном и не обозримом месте. Поэтому просто после формирования файла я закрываю (quit) Access, а потом снова запускаю его. Возможно есть способ отключать программно Excel в 2007 и работать дальше без выхода из Access?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
pashulka
- Сообщения:831
- Зарегистрирован:24 ноя 2004, 03:46
- Контактная информация:
28 июл 2015, 21:30
Замените
Код: Выделить всё
objXL.Sheets(Array("Nakl", "Rees")).Copy After:=Sheets(intListovN)
на
Код: Выделить всё
objXL.Sheets(Array("Nakl", "Rees")).Copy After:=objXL.Sheets(intListovN)
И, на всякий случай, перед Set objXL = Nothing явно закройте книгу и приложение.
-
Putincev
- Сообщения:38
- Зарегистрирован:10 май 2007, 16:06
29 июл 2015, 16:57
это у меня из-за того, что я явно не указал, к какой книге обращаться?
еще не пробовал, но большое спасибо, завтра попробую и отпишусь
-
pashulka
- Сообщения:831
- Зарегистрирован:24 ноя 2004, 03:46
- Контактная информация:
Forum Rules |
|