Four ways to fix runtime error 1004 in Excel:
Workable Solutions | Step-by-step Troubleshooting |
---|---|
Fix 1. Delete the GWXL97.XLA Files | Fix the Excel error 1004 is to find and delete the error file. Go to C:Program FilesMS OfficeOfficeXLSTART…Full steps |
Fix 2. Check the Trust Access to the VBA Project Object Model | Enable a VBA project trust option in Excel Trust Center to fix Excel error 1004. Open a blank Excel file…Full steps |
Fix 3. Create Another Excel Template | Start a new Excel workbook and make sure there is only one worksheet in it. Format the workbook first…Full steps |
Fix 4. Repair Corrupted Excel File | Repair corrupted Excel files with a file recovery tool. EaseUS file repair tool fixes severely corrupted XLS and XLSX files and retrieves everything from Excel…Full steps |
Microsoft Visual Basic for Applications (VBA) is developed to help users write programs for the Windows operating system. It runs as an internal programming language in Microsoft Office, such as Word, Excel, and PowerPoint.
Some users have reported that when running VBA in an Excel chart or trying to generate a Macro in Excel documents, an error message popped up saying: Runtime error 1004. And then they find themselves cannot access the Excel files. If you have the same encounter as these users, this post is the right place for you. You can find both the reasons and the corresponding solutions of this error code on this page.
Runtime Error Details
The error message contains more information than the error code 1004. Generally, follow the error code, you can see a brief description. The most repeated error messages are listed below:
- Runtime error 1004: Application or object-defined error.
- Runtime error 1004: Method Ranger of Object Worksheet failed.
- Runtime error 1004: Copy Method of Worksheet Class failed.
The Reason Why You See Runtime Error 1004 in Excel
If you want to know how to fix runtime error 1004 in Excel properly, you need to understand what leads to this issue. The following are the most prominent reasons.
- Macro Name Error
The Macro you are running is copying the original worksheet to a workbook with a defined name that you did not save and close before running the Macro.
- File Conflict
When opening the VBA Excel file, it gets conflicted with other programs.
- Too Many Legend Entries
The Excel chart contains more legend entries than space available to display the legend entries on the chart.
- Excel File Corruption
Your .xls files got corrupted, infected, or damaged.
Although many reasons would cause this Excel error 1004 problem, luckily, some valid methods can help users re-access the files. Let’s check them one by one.
Fix 1. Delete the GWXL97.XLA Files to Fix Runtime Error 1004 in Excel
The easiest method to fix the Excel error 1004 is to find and delete the error file.
Step 1. Go to C:Program FilesMS OfficeOfficeXLSTART.
Step 2. Find GWXL97.XLA file and delete it.
Step 3. Reopen your Excel file and check if the problem is solved.
Fix 2. Check the Trust Access to the VBA Project Object Model
Another solution you can try is to enable a VBA project trust option in Excel Trust Center. Follow the detailed steps and have a try.
Step 1. Open a blank Excel file and click «Files» on the upper left.
Step 2. Click Option and go to Trust Center.
Step 3. Find and enter the Trust Center Settings.
Step 4. Under Macro Settings, tick the option of «Trust access to the VBA project object model.»
Now you can check your Excel file.
Fix 3. Create Another Excel Template to Fix Runtime Error 1004 in Excel
This method could be a little bit complicated, but it’s useful and worth trying.
Step 1. Please start a new Excel workbook and make sure there is only one worksheet in it.
Step 2. Format the workbook first and then put the data you need onto it.
Step 3. Tap File > Save As, first enter the file name, and click the unfold arrow in Save as Type column.
Excel 2003: Choose Excel 97-2003 Template.
Excel 2007 or Later: Choose Excel Template.
Step 4. Click «Save» to confirm.
Now you can insert it programmatically by using the following code: Add Type:=pathfilename. The file name is the one you set when you create the new Excel template.
Fix 4. Repair Corrupted Excel Files Due to Error 1004
If all the above solutions can’t help you out, then there is one possibility that the Excel file you want to open is damaged. To fix a damaged Excel file, you can rely on file repair software. EaseUS Data Recovery Wizard is a great choice.
With this tool, click the «Repair» button and wait for it to fix all the corrupted documents for you.
- Repair various corrupted files, including repairing Word, Excel, and PDF document
- Fix unreadable contents in Word efficiently
- Repair corrupted PDF files, extract the text, comments, labels, graphics, etc.
- Compatible with Microsoft Office 2019, 2016, 2013, 2010, & previous versions.
Download the software and follow the detailed steps below to fix corrupted Excel files.
Step 1. Launch EaseUS Data Recovery Wizard, and then scan disk with corrupted documents. This software enables you to fix damaged Word, Excel, PPT, and PDF files in same steps.
Step 2. EaseUS data recovery and repair tool will scan for all lost and corrupted files. You can find the target files by file type or type the file name in the search box.
Step 3. EaseUS Data Recovery Wizard can repair your damaged documents automatically. After file preview, you can click «Recover» to save the repaired Word, Excel, and PDF document files to a safe location.
The Bottom Line
After reading, you must have a thorough understanding of how to fix Runtime error 1004. If you can make sure that the Excel file you want to open is valid, then the first three methods would help you out.
Once you got a damaged Excel file, a professional file recovery tool is a wiser choice. EaseUS file repair software is highly recommended by many users & IT professionals to help you repair Word, Excel, PowerPoint, and PDF files.
Four ways to fix runtime error 1004 in Excel:
Workable Solutions | Step-by-step Troubleshooting |
---|---|
Fix 1. Delete the GWXL97.XLA Files | Fix the Excel error 1004 is to find and delete the error file. Go to C:Program FilesMS OfficeOfficeXLSTART…Full steps |
Fix 2. Check the Trust Access to the VBA Project Object Model | Enable a VBA project trust option in Excel Trust Center to fix Excel error 1004. Open a blank Excel file…Full steps |
Fix 3. Create Another Excel Template | Start a new Excel workbook and make sure there is only one worksheet in it. Format the workbook first…Full steps |
Fix 4. Repair Corrupted Excel File | Repair corrupted Excel files with a file recovery tool. EaseUS file repair tool fixes severely corrupted XLS and XLSX files and retrieves everything from Excel…Full steps |
Microsoft Visual Basic for Applications (VBA) is developed to help users write programs for the Windows operating system. It runs as an internal programming language in Microsoft Office, such as Word, Excel, and PowerPoint.
Some users have reported that when running VBA in an Excel chart or trying to generate a Macro in Excel documents, an error message popped up saying: Runtime error 1004. And then they find themselves cannot access the Excel files. If you have the same encounter as these users, this post is the right place for you. You can find both the reasons and the corresponding solutions of this error code on this page.
Runtime Error Details
The error message contains more information than the error code 1004. Generally, follow the error code, you can see a brief description. The most repeated error messages are listed below:
- Runtime error 1004: Application or object-defined error.
- Runtime error 1004: Method Ranger of Object Worksheet failed.
- Runtime error 1004: Copy Method of Worksheet Class failed.
The Reason Why You See Runtime Error 1004 in Excel
If you want to know how to fix runtime error 1004 in Excel properly, you need to understand what leads to this issue. The following are the most prominent reasons.
- Macro Name Error
The Macro you are running is copying the original worksheet to a workbook with a defined name that you did not save and close before running the Macro.
- File Conflict
When opening the VBA Excel file, it gets conflicted with other programs.
- Too Many Legend Entries
The Excel chart contains more legend entries than space available to display the legend entries on the chart.
- Excel File Corruption
Your .xls files got corrupted, infected, or damaged.
Although many reasons would cause this Excel error 1004 problem, luckily, some valid methods can help users re-access the files. Let’s check them one by one.
Fix 1. Delete the GWXL97.XLA Files to Fix Runtime Error 1004 in Excel
The easiest method to fix the Excel error 1004 is to find and delete the error file.
Step 1. Go to C:Program FilesMS OfficeOfficeXLSTART.
Step 2. Find GWXL97.XLA file and delete it.
Step 3. Reopen your Excel file and check if the problem is solved.
Fix 2. Check the Trust Access to the VBA Project Object Model
Another solution you can try is to enable a VBA project trust option in Excel Trust Center. Follow the detailed steps and have a try.
Step 1. Open a blank Excel file and click «Files» on the upper left.
Step 2. Click Option and go to Trust Center.
Step 3. Find and enter the Trust Center Settings.
Step 4. Under Macro Settings, tick the option of «Trust access to the VBA project object model.»
Now you can check your Excel file.
Fix 3. Create Another Excel Template to Fix Runtime Error 1004 in Excel
This method could be a little bit complicated, but it’s useful and worth trying.
Step 1. Please start a new Excel workbook and make sure there is only one worksheet in it.
Step 2. Format the workbook first and then put the data you need onto it.
Step 3. Tap File > Save As, first enter the file name, and click the unfold arrow in Save as Type column.
Excel 2003: Choose Excel 97-2003 Template.
Excel 2007 or Later: Choose Excel Template.
Step 4. Click «Save» to confirm.
Now you can insert it programmatically by using the following code: Add Type:=pathfilename. The file name is the one you set when you create the new Excel template.
Fix 4. Repair Corrupted Excel Files Due to Error 1004
If all the above solutions can’t help you out, then there is one possibility that the Excel file you want to open is damaged. To fix a damaged Excel file, you can rely on file repair software. EaseUS Data Recovery Wizard is a great choice.
With this tool, click the «Repair» button and wait for it to fix all the corrupted documents for you.
- Repair various corrupted files, including repairing Word, Excel, and PDF document
- Fix unreadable contents in Word efficiently
- Repair corrupted PDF files, extract the text, comments, labels, graphics, etc.
- Compatible with Microsoft Office 2019, 2016, 2013, 2010, & previous versions.
Download the software and follow the detailed steps below to fix corrupted Excel files.
Step 1. Launch EaseUS Data Recovery Wizard, and then scan disk with corrupted documents. This software enables you to fix damaged Word, Excel, PPT, and PDF files in same steps.
Step 2. EaseUS data recovery and repair tool will scan for all lost and corrupted files. You can find the target files by file type or type the file name in the search box.
Step 3. EaseUS Data Recovery Wizard can repair your damaged documents automatically. After file preview, you can click «Recover» to save the repaired Word, Excel, and PDF document files to a safe location.
The Bottom Line
After reading, you must have a thorough understanding of how to fix Runtime error 1004. If you can make sure that the Excel file you want to open is valid, then the first three methods would help you out.
Once you got a damaged Excel file, a professional file recovery tool is a wiser choice. EaseUS file repair software is highly recommended by many users & IT professionals to help you repair Word, Excel, PowerPoint, and PDF files.
Ошибка выполнения 1004 — это код ошибки, относящийся к Microsoft Visual Basic, который, как известно, влиял на пользователей Microsoft Excel. Как известно, эта ошибка наиболее распространена в Excel 2003 и Excel 2007, хотя ни одна из версий популярного приложения Microsoft для работы с электронными таблицами не защищена от угрозы «Ошибка времени выполнения 1004. В большинстве случаев пользователи, затронутые этой проблемой, видят одно из два различных варианта ошибки времени выполнения 1004. В целом два варианта ошибки времени выполнения 1004 имеют вид:
«Ошибка во время выполнения 4 1004 ’:
Не удалось скопировать метод класса листа»
«Ошибка во время выполнения 4 1004 ’:
Ошибка приложения или объекта»
Точное сообщение об ошибке, которое вы видите, может также немного отличаться, в некоторых случаях, хотя код ошибки останется прежним. Однако независимо от того, с какой версией проблемы вы столкнулись, она почти всегда возникает при запуске макроса в Excel, который предназначен для копирования рабочих листов и последующего размещения копий в той же рабочей книге, что и исходная рабочая таблица.
В отличие от наихудших технических проблем, причина ошибки 1004 во время выполнения в Microsoft Excel известна. Ошибка 1004 времени выполнения возникает, когда выполняемый макрос копирует исходную рабочую таблицу в рабочую книгу с определенным именем, которое вы не сохранили и не закрыли до запуска макроса. Пример такого макроса можно увидеть в следующем коде:
Sub CopySheetTest ()
Dim iTemp As Integer
Dim oBook As Workbook
Dim iCounter As Integer
Создать новую пустую книгу:
iTemp = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = 1
Set oBook = Application.Workbooks.Add
Application.SheetsInNewWorkbook = iTemp
Добавить определенное имя в книгу
'Относится к диапазону:
oBook.Names.Add Name: = "tempRange", _
RefersTo: = "= Лист1 $ A $ 1!"
Сохранить рабочую книгу:
oBook.SaveAs "c: test2.xls"
'Скопируйте лист в цикле. В конце концов,
'вы получите ошибку 1004: метод копирования
«Класс рабочего листа не выполнен.
Для iCounter = 1 до 275
oBook.Worksheets (1). Копия после: = oBook.Worksheets (1)
следующий
End Sub
Поскольку причина ошибки 1004 времени выполнения в контексте Microsoft Excel известна, также как и ее разрешение. В дополнение к решению этой проблемы пользователям, затронутым ею, также доступен обходной путь, который можно использовать в случае, если решение не работает или они не находят решение приемлемым вариантом.
Решение:
Решение этой конкретной проблемы состоит в том, чтобы просто отредактировать код макроса, который вы запускаете, чтобы он периодически сохранял и закрывал целевую рабочую книгу, пока она копирует рабочие листы. Код для макроса, который делает это, будет выглядеть примерно так:
Sub CopySheetTest ()
Dim iTemp As Integer
Dim oBook As Workbook
Dim iCounter As Integer
Создать новую пустую книгу:
iTemp = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = 1
Set oBook = Application.Workbooks.Add
Application.SheetsInNewWorkbook = iTemp
Добавить определенное имя в книгу
'Относится к диапазону:
oBook.Names.Add Name: = "tempRange", _
RefersTo: = "= Лист1 $ A $ 1!"
Сохранить рабочую книгу:
oBook.SaveAs "c: test2.xls"
'Скопируйте лист в цикле. В конце концов,
'вы получите ошибку 1004: метод копирования
«Класс рабочего листа не выполнен.
Для iCounter = 1 до 275
oBook.Worksheets (1). Копия после: = oBook.Worksheets (1)
«Раскомментируйте этот код для обходного пути:
«Сохранять, закрывать и открывать после каждых 100 итераций:
Если iCounter Mod 100 = 0, то
oBook.Close SaveChanges: = True
Set oBook = Nothing
Set oBook = Application.Workbooks.Open ("c: test2.xls")
End If
следующий
End Sub
Замечания: Точное количество раз, которое вы можете скопировать лист, прежде чем вам нужно будет сохранить и закрыть книгу, в которой сохраняются копии, варьируется от одного случая к другому, поскольку это зависит от размера листа, из которого вы делаете копии.
Обходной путь:
Как указывалось ранее, решение этой конкретной проблемы также существует. Чтобы обойти эту проблему, достаточно просто вставить новый лист из шаблона вместо создания копии существующего листа. Если вы хотите обойти эту проблему, вот что вам нужно сделать:
- запуск превосходить.
- Создать новую рабочую книгу и удалять каждый отдельный лист содержит только один.
- Формат Рабочая тетрадь.
- Добавьте любой текст, данные и / или диаграммы, которые вы хотите иметь в шаблоне по умолчанию, на единственный лист, который теперь содержит книга.
- Если вы используете Excel 2003 или более раннюю версию, нажмите на файл > Сохранить как. Если вы используете Excel 2007 или более поздней версии, с другой стороны, нажмите на Microsoft Office кнопку, а затем нажмите на Сохранить как.
- в Имя файла: В поле введите любой желаемый шаблон.
- Откройте раскрывающееся меню рядом с Сохранить как тип: поле и нажмите на превосходить Шаблон (.xlt) если вы используете Excel 2003 или более раннюю версию, или превосходить Шаблон (.xltx) если вы используете Excel 2007 или более поздней версии, чтобы выбрать его.
- Нажмите на Сохранить.
- После того, как вы успешно создали шаблон, вы можете вставить его программно, используя следующую строку кода:
Sheets.Add Type: =дорожкаимя файла
Замечания: В строке кода, описанной выше, путь имя_файла Необходимо заменить полным путем (включая полное имя файла) для местоположения шаблона листа, который вы только что создали.
Майкрософт Эксель — одна из самых популярных электронных таблиц, используемых во всем мире как для личных, так и для деловых целей. Это универсальное место для хранения, организации и обработки данных организованным способом. MS Excel поставляется в основном с двумя расширениями, то есть в формате XLS и XLSX. Однако, помимо невероятной популярности, ошибки во время выполнения — обычная неприятность для очень многих пользователей Windows, и одной из самых распространенных является ошибка. Ошибка выполнения 1004.
В этом руководстве мы собираемся обсудить эту распространенную ошибку времени выполнения 1004 и некоторые из лучших исправлений для ее легкого решения.
Что такое ошибка времени выполнения 1004 в Excel?
Ошибка выполнения 1004 — это код ошибки, относящийся к Microsoft Visual Basic, который, как известно, беспокоит пользователей Microsoft Excel. С этой ошибкой сталкиваются любые версии MS Excel, такие как Excel 2007, 2010, 2013, 2016, 2019. Ни одна версия Microsoft Excel не застрахована от угрозы Runtime Error 1004.
С этой ошибкой в основном сталкиваются пользователи, когда они работают с файлом Excel или пытаются создать макрос в документе Excel. Это может вызвать серьезные проблемы при работе с приложениями Visual Basic и привести к полному сбою программы или даже всей системы; иногда это может привести к зависанию системы, запрещая пользователям что-либо делать в своей системе.
Типы сообщений об ошибках
Сообщения об ошибках, которые больше всего связаны с этой ошибкой времени выполнения, следующие:
- VB: ошибка времени выполнения ‘1004’: ошибка приложения или объекта
- Ошибка выполнения Excel VBA 1004 «Ошибка выбора метода класса Range»
- ошибка времени выполнения 1004 диапазон метода объекта _global не удалось Visual Basic
- Макрос Excel «Ошибка выполнения» 1004?
- Ошибка выполнения 1004 не удалось открыть метод объектных книг
- Ошибка времени выполнения «1004»: сбой метода «Рейнджер» объекта «Рабочий лист»
- «Сбой метода в ПРИЛОЖЕНИИ ПРИЛОЖЕНИЯ ОБЪЕКТНОЙ программы».
Если вы столкнулись с какой-либо из этих ошибок, вы можете исправить ее с помощью нашего руководства.
Каковы причины?
Ошибка 1004 — это общий код, связанный с MS Excel, но не связанный с одной точной причиной. Следовательно, в этом случае точная причина, по которой может появиться эта ошибка, будет варьироваться от случая к случаю и от обстоятельств к обстоятельствам. От проблем с конфигурацией до проблем с программным обеспечением, ниже мы перечислили краткий обзор распространенных причин ошибки времени выполнения 1004 в Excel:
- Значок рабочего стола MS Excel может быть поврежден
- Файл VBA Excel конфликтует с другим приложением
- Из-за ошибки, указанной в приложении или объекте
- Из-за отсутствия зависимого файла
- Из-за вируса, трояна или вредоносного ПО
- Из-за неверных ключей реестра и так далее.
Это были некоторые из наиболее частых причин получения ошибки времени выполнения 1004 в MS Excel; Теперь давайте разберемся с различными исправлениями.
Здесь мы подробно описали как ручные, так и автоматические решения для исправления ошибки выполнения 1004. Вы можете использовать любой из следующих методов, чтобы решить проблему.
- Создать новый шаблон Excel
- Запустите сканирование на вирусы
- Для VB: ошибка времени выполнения ‘1004’, измените размер записей легенды
Давайте подробно рассмотрим каждый из этих методов.
1]Создайте новый шаблон Excel
В некоторых случаях для устранения этой проблемы достаточно просто вставить новый лист из шаблона вместо создания копии существующего листа. Вот что вам нужно сделать:
1]Откройте MS Excel в вашей системе
2]Нажмите ‘CTRL + N‘для создания нового листа Microsoft Excel или просто выберите’Пустая книга‘с первого экрана.
3]После этого удалите все листы в книге, кроме одного.
4]Теперь отформатируйте оставшуюся книгу. Также обратите внимание, что эту книгу можно изменить в соответствии с вашими индивидуальными потребностями.
5]В конце перейдите к ‘Файл> Сохранить как‘, чтобы сохранить новый рабочий лист в формате файла шаблона Excel (.xltx или .xlt).
6]После успешного создания шаблона вы можете вставить его программно, используя следующую строку кода:
Таблицы.Добавить Тип: = путь имя файла
Пожалуйста, обрати внимание — Не забудьте заменить новое имя файла на настоящее имя документа.
2]Запустите сканирование на вирусы
Очень важно сканировать компьютерную систему на наличие вредоносных программ и вирусов, поскольку они могут повредить файлы и важные документы и показать ошибку времени выполнения 1004 в MS Excel. Иногда очень помогает хорошая антивирусная программа.
3]Для VB: ошибка времени выполнения «1004», измените размер записей легенды.
Если вы столкнулись с ошибкой времени выполнения 1004 при запуске макроса Microsoft Visual Basic для приложений (VBA), вы можете использовать этот метод для временного решения.
Обычно эта ошибка возникает при попытке запустить макрос VBA, который использует метод LegendEntries для внесения изменений в записи легенды на диаграмме Microsoft Excel. На этот раз вы можете получить следующее сообщение об ошибке:
Ошибка времени выполнения ‘1004’: ошибка приложения или объекта
Эта ошибка возникает, когда диаграмма Excel содержит больше записей легенды, чем имеется место для отображения записей легенды на диаграмме Excel. В этом случае Microsoft Excel может усекать записи легенды.
Чтобы обойти это поведение, создайте макрос, который уменьшает размер шрифта текста легенды диаграммы Excel до того, как макрос VBA внесет изменения в легенду диаграммы, а затем восстановите размер шрифта легенды диаграммы, чтобы он был похож на следующий пример макроса. .
Sub ResizeLegendEntries() With Worksheets("Sheet1").ChartObjects(1).Activate ' Store the current font size fntSZ = ActiveChart.Legend.Font.Size 'Temporarily change the font size. ActiveChart.Legend.Font.Size = 2 'Place your LegendEntries macro code here to make 'the changes that you want to the chart legend. ' Restore the font size. ActiveChart.Legend.Font.Size = fntSZ End With End Sub
Мы надеемся, что эта статья поможет вам исправить ошибку времени выполнения 1004 в Microsoft Excel. Это руководство дает вам как ручное, так и автоматическое решение, чтобы избавиться от этой ошибки; вы можете использовать любое решение в зависимости от ваших потребностей.
Читать дальше: Клавиши со стрелками не работают в Microsoft Excel.
Возникает при переходе по ссылке из одного листа на другой |
|
Сергей Пользователь Сообщений: 11251 |
Юрий я не рунописец но пока начинаю это читать
Прикладывайте примеры Лень двигатель прогресса, доказано!!! |
||
Юрий М Модератор Сообщений: 60394 Контакты см. в профиле |
Юрий, я подправил название темы: так больше конкретики. Ведь с Вашим названием все вопросы по ошибкам можно смело задавать в Вашей теме. Так лучше? Ну почему бы самому не придумать нормальное название? |
Сергей Пользователь Сообщений: 11251 |
Юрий Глодовский, я почему говорю про пример и почему так быстро привел описание ошибки, потому что ща сам сижу втыкаю в неё, так ка записал макрорекодером макрос попытался его усовершенствовать и мне выдает такую фигню и я не думаю что мы с вами делаем одно и тоже Лень двигатель прогресса, доказано!!! |
Сергей, пример приложить не могу, так как там у меня вся рабочая база. Пробовал вынести это дело в отдельный файл, но ошибка не возникает, походу это конфликт макросов. |
|
Юрий М Модератор Сообщений: 60394 Контакты см. в профиле |
Начните с того, что прогоните код пошагово: для начала выясним — на какой строке и в какой процедуре возникает эта ошибка. |
Сергей Пользователь Сообщений: 11251 |
#7 16.05.2014 22:53:10
это не ко мне, сам тупил над такой же ошибкой около 30 минут, грохнул макрос рисую заново, но это чисто развлекуха под пиво к работе у меня ни как не относится Лень двигатель прогресса, доказано!!! |
||
Юрий Глодовский Пользователь Сообщений: 137 |
#8 16.05.2014 23:42:20 Юрий М, в третьей строке, тот что If Not Intersect…
|
||
Сергей Пользователь Сообщений: 11251 |
#9 16.05.2014 23:44:38
Юрий Глодовский, обращайте внимание на советы, если не знаете как это сделать, спрашивайте, дадут либо ссылку либо совет как это сделать, КОТ хоть и сидит со скелетом но форумчан редко ест Лень двигатель прогресса, доказано!!! |
||
Hugo Пользователь Сообщений: 23144 |
#10 16.05.2014 23:46:23 У меня нет ошибки.
кто его знает…
Изменено: Hugo — 17.05.2014 08:31:16 |
||||
Юрий М Модератор Сообщений: 60394 Контакты см. в профиле |
Без файла сложно, конечно… Лист «База» есть? |
Hugo Пользователь Сообщений: 23144 |
Юра, у меня листа База не было. В начале |
Сергей Пользователь Сообщений: 11251 |
вообще не уверен но со своей ошибкой кажись разобрался я когда писал рекодером копировал формулы из одного документа в другой, когда они оба были открыты макрос работал, после того как я закрыл файл из которого копировал формулы начал запускать макрос начала вылетать эта ошибка Лень двигатель прогресса, доказано!!! |
Юрий Глодовский Пользователь Сообщений: 137 |
#14 17.05.2014 00:00:16
Этот вариант помог. Большое спасибо. |
||
Юрий М Модератор Сообщений: 60394 Контакты см. в профиле |
#15 17.05.2014 00:02:43 Немного смущает несоответствие комментария и строки кода. Комментарий ошибку не вызовет, но всё же:
А проверяем столбец С. |
||
Сергей Пользователь Сообщений: 11251 |
#16 17.05.2014 00:13:50
в будущем может, на данном моменте эволюции понимания в VBA у меня даже таких строк нет Лень двигатель прогресса, доказано!!! |
||
Казанский Пользователь Сообщений: 8839 |
#17 17.05.2014 01:13:52 Замечу, что Target.Parent это Sh, который передается в процедуру.
|
||
С самого начала Microsoft предоставила нам множество полезных приложений. В свое время приложения стали частью Microsoft Office. Microsoft Excel — одно из таких приложений, которое существует с первых дней существования компьютеров, и это программа, которая позволяет пользователям систематизировать формат и вычислять данные. Более того, он позволяет пользователям использовать формулы, используя систему электронных таблиц. Microsoft Excel используется многочисленными компаниями по всему миру для выполнения финансового анализа. Более того, MS Excel также поддерживает приложения Visual Basic, что означает, что вы можете добавить скрипт VBA, прикрепленный к вашей электронной таблице.
Другие офисные программы и MS Excel используют код VBA для множества функций, например, вы можете добавить кнопку в электронную таблицу, которая автоматически добавит данные. Такие функции очень полезны, когда вы собираетесь управлять большим объемом данных. Однако пользователи часто сообщают об ошибках, что у них есть лицо. Здесь мы обсуждаем конкретную ошибку времени выполнения VBA 1004. Возможные причины ошибки времени выполнения 1004 VBA — неверный синтаксис или код, отфильтрованные данные, повреждение MS Excel. Однако также возможно, что две программы конфликтуют при попытке открыть файл VBA одновременно.
Оглавление
-
1 Как исправить ошибку времени выполнения VBA 1004?
- 1.1 Способ 1. Создать новый шаблон
- 1.2 Способ 2. Удаление файла GWXL97.XLA
- 1.3 Способ 3. Отладить код
- 2 Вывод
Как исправить ошибку времени выполнения VBA 1004?
Есть несколько методов, с помощью которых вы можете попытаться решить проблему времени выполнения VBA самостоятельно. Список решений приведен ниже.
Способ 1. Создать новый шаблон
Помещение нового листа Excel в шаблон вместо копирования или дублирования существующего листа может решить проблему. Поэтому сначала попробуйте это.
Шаг 1) Сначала запустите Microsoft Excel и создайте новую книгу, затем удалите существующий лист, оставив только один. Вы можете отформатировать как хотите, чтобы создать шаблон по умолчанию. Нажмите на файл вариант в строке меню и выберите Сохранить как вариант.
Шаг 2) Выберите Книга Excel опция, откроется окно файлового менеджера. Выберите каталог, в котором вы хотите сохранить свой шаблон.
Шаг 3) Введите имя шаблона, затем выберите тип файла как .xlt для Excel 2003 и .xltx для Excel 2007 или новее. Нажми на Сохранить кнопку, и ваш шаблон будет сохранен. Теперь попробуйте запустить код VBA.
Способ 2. Удаление файла GWXL97.XLA
Если несколько программ попытаются открыть файл VBA одновременно, конфликт обязательно возникнет, поэтому, чтобы убедиться в отсутствии конфликта, вы можете попробовать удалить файл GWXL97.XLA.
Шаг 1) Откройте Проводник.
Шаг 2) Перейдите в следующий каталог —
C: Program Files MSOffice Office XLSTART
Шаг 3) Вы увидите файл GWXL97.XLA в папке, выберите и нажмите кнопку удаления на клавиатуре или щелкните правой кнопкой мыши и выберите удалить. Теперь попробуйте запустить код VBA.
Способ 3. Отладить код
Вполне возможно, что ошибка 1004 возникает из-за неверного кода. Поэтому вам нужно будет написать правильный синтаксис и значение, чтобы код VBA отлично выполнялся. Может быть множество ошибок, которые могут быть результатом ошибки 1004, чтобы этого не произошло, вам нужно дважды проверить свой код и указать недопустимые строки. Например, Имя уже занято сообщение отображается с ошибкой 1004, если имя рабочего листа уже существует, и ему присвоено то же имя другому.
Если вы запустите код, он выдаст сообщение об ошибке 1004, поэтому попробуйте изменить имя и присвоить значения. Есть еще 1004 ошибки, связанные с недопустимым кодом VBA, например, сбой в диапазоне object_Global, поле класса Select Method of Range и многое другое. Каждый раз, когда будет отображаться сообщение, ошибки будут выделены ошибкой 1004, если ошибка связана с кодом VBA. Поэтому отлаживайте код с правильным синтаксисом и значениями.
Вывод
Код ошибки 1004 в Ms. Excel можно глупо исправить, отладив коды, исправив неверные строки, имена и значения. Более того, если проблема не связана с кодом, вы можете удалить файл XLA, который может конфликтовать с MS Excel при открытии файла VBA. Кроме того, вы можете попытаться создать новый шаблон с существующей Рабочей книгой, чтобы устранить проблему.
Выбор редактора:
- Показывать дату значка панели задач Windows 10 маленькими значками
- Изменить скорость курсора в последней версии Windows 10 2004
- Открывайте торрент-файлы в Windows 10 или macOS
- Как исправить ошибку «Расширение панели управления несовместимо с версией драйвера»
- Сделайте снимок экрана с видео YouTube
Рахул изучает информатику и проявляет огромный интерес к темам в области технологий и криптовалюты. Большую часть времени он пишет, слушает музыку или путешествует по незнакомым местам. Он считает, что шоколад — это решение всех его проблем. Жизнь бывает, и кофе помогает.
Ошибка VBA 1004 — это ошибка времени выполнения в VBA, которая также известна как определяемая приложением или объектно-определяемая ошибка, и почему это потому, что у нас ограниченное количество столбцов в excel, и когда наш код дает команду выйти за пределы диапазона, мы получаем 1004 error, бывают и другие ситуации, когда мы получаем эту ошибку, когда ссылаемся на диапазон, которого нет на листе.
Ошибка VBA 1004 в Excel
Ошибка VBA 1004 — это ошибка времени выполнения в VBA, которая возникает во время выполнения кода. Ошибки являются неотъемлемой частью кодирования, особенно когда вы пишете впервые, вы можете столкнуться с множеством ошибок в VBA. Это общее для всех, и в этом нет ничего страшного.
Однако знание того, почему это происходит, поможет вам избежать этих ошибок в ближайшем будущем.
В этой статье мы обсудим одну из важных ошибок Excel «Ошибка VBA 1004».
Вы можете свободно использовать это изображение на своем веб-сайте, в шаблонах и т. Д. Пожалуйста, предоставьте нам ссылку с указанием авторстваСсылка на статью должна содержать гиперссылку
Например:
Источник: Ошибка VBA 1004 (wallstreetmojo.com)
6 основных ошибок выполнения Excel VBA 1004
Вы можете скачать этот шаблон ошибки VBA 1004 здесь — Шаблон ошибки VBA 1004
# 1 — Ошибка времени выполнения VBA 1004: это имя уже занято. Попробуйте другой:
Эта ошибка возникает при переименовании листа.
Если имя рабочего листа уже существует и если вы попытаетесь назначить то же имя другому листу, VBA выдаст ошибку времени выполнения 1004, заявив: «Имя уже занято. Попробуйте другой «.
Например, посмотрите на приведенный ниже код.
Код:
Sub Error1004_Example() Worksheets("Sheet2").Name = "Sheet1" End Sub
Я пытаюсь переименовать лист 2 в лист 1. Но у меня уже есть лист с именем «Sheet1».
Если я запустил этот код с помощью клавиши F5 или вручную, я получу ошибку времени выполнения 1004: это имя уже занято. Попробуйте другой.
Итак, попробуйте переименовать лист соответствующим образом.
# 2 — Ошибка времени выполнения VBA 1004: сбой метода «Диапазон» объекта «_ Global»:
Обычно это происходит, когда мы пытаемся получить доступ к именованный диапазон в ExcelДиапазон имен в Excel — это имя, присвоенное диапазону для использования в будущем. Чтобы присвоить диапазону имя, сначала выберите диапазон данных, а затем вставьте в диапазон таблицу, затем введите имя диапазона из поля имени в левой части окна.читать далее с орфографической ошибкой или вообще отсутствует на листе, на который вы ссылаетесь.
Для этого я назвал диапазон ячеек «Заголовками», как показано на изображении ниже.
Теперь, используя объект Range, я могу получить доступ к этому диапазону.
Код:
Sub Error1004_Example() Range("Headings").Select End Sub
Если вы запустите этот код, нажав клавишу F5, то этот код выберет именованный диапазон.
Но если я неправильно укажу названный диапазон, я получу ошибку времени выполнения 1004: Ошибка метода «Диапазон» объекта «_ Global».
Код:
Sub Error1004_Example() Range("Headngs").Select End Sub
Запустите этот код вручную или с помощью клавиши F5 и посмотрите результат.
# 3 — Ошибка времени выполнения VBA 1004: Ошибка выбора метода класса Range:
Обычно это происходит, когда мы пытаемся выбрать ячейки, отличные от активного листа, не делая этот лист выбранным или активным.
Например, посмотрите на приведенный ниже код.
Код:
Sub Error1004_Example() Worksheets("Sheet1").Range("A1:A5").Select End Sub
В приведенном выше коде говорится, что нужно выбрать ячейки от A1 до A5 на листе «Sheet1». Чтобы поэкспериментировать, моим текущим активным листом является «Лист2», а не «Лист1».
Я запущу этот код с помощью клавиши F5 или вручную, чтобы посмотреть, что произойдет.
Мы получили ошибку времени выполнения 1004: не удалось выбрать метод класса Range. Это потому, что, не активируя лист, мы пытаемся выбрать ячейки этого листа. Итак, сначала нам нужно активировать прозрачность, прежде чем мы выберем ячейки. Ниже приведен правильный код.
# 4 — Ошибка выполнения VBA 1004, не удалось открыть объектные книги:
Обычно это происходит, когда вы пытаетесь открыть книгу, имя которой совпадает с именем другой книги, которая уже открыта.
Например, посмотрите на приведенный ниже код.
Код:
Sub Error1004_Example() Dim wb As Workbook Set wb = Workbooks.Open("FileName.xls", ReadOnly:=True, CorruptLoad:=xlExtractData) End Sub
Это вызовет ошибку ниже.
# 5 — Метод ошибки выполнения VBA 1004 К сожалению, мы не смогли найти:
Эта ошибка возникает из-за того, что вы пытаетесь открыть файл, которого нет по указанному пути. Его можно переместить, переименовать или удалить по указанному пути. Одна из причин этого из-за неправильного типа пути или имени файла с расширение ExcelРасширения Excel представляют формат файла. Это помогает пользователю сохранять различные типы файлов Excel в различных форматах. Например, .xlsx используется для простых данных, а XLSM используется для хранения кода VBA.читать далее.
Теперь взгляните на приведенный ниже код.
Код:
Sub Error1004_Example() Workbooks.Open Filename:="E:Excel FilesInfographicsABC.xlsx" End Sub
Этот код требует открыть файл «ABC.xlsx» в указанном пути к папке.
Я точно знаю, что в указанном пути к папке нет файла. Если в указанной папке нет файла, мы получим Ошибка выполнения 1004 метод. Извините, но мы не смогли его найти.
# 6 — Ошибка выполнения VBA 1004 Ошибка активации класса диапазона методов:
Эта ошибка возникает в основном из-за активации диапазона ячеек без активации рабочего листа.
Например, посмотрите на приведенный ниже код.
Код:
Sub Error1004_Example() Worksheets("Sheet1").Range("A1:A5").Activate End Sub
Эта ошибка очень похожа на ту, которую мы видели в Ошибка времени выполнения 1004: Ошибка выбора метода класса Range.
Если я запускаю вручную или с помощью клавиши F5, мы получим ошибку ниже.
Потому что без активации листа мы не можем активировать в нем ячейки. Итак, сначала активируйте лист, а затем активируйте ячейки этого листа.
УЗНАТЬ БОЛЬШЕ >>
Post Views: 1 483
В этой статье представлена ошибка с номером Ошибка 1004, известная как Ошибка, определяемая приложением или объектом, описанная как Ошибка времени выполнения «1004». Ошибка, определяемая приложением или объектом.
О программе Runtime Ошибка 1004
Время выполнения Ошибка 1004 происходит, когда Microsoft Excel дает сбой или падает во время запуска, отсюда и название. Это не обязательно означает, что код был каким-то образом поврежден, просто он не сработал во время выполнения. Такая ошибка появляется на экране в виде раздражающего уведомления, если ее не устранить. Вот симптомы, причины и способы устранения проблемы.
Определения (Бета)
Здесь мы приводим некоторые определения слов, содержащихся в вашей ошибке, в попытке помочь вам понять вашу проблему. Эта работа продолжается, поэтому иногда мы можем неправильно определить слово, так что не стесняйтесь пропустить этот раздел!
- Определено — определение — это недвусмысленное утверждение значения слова или фразы.
- Объект — объект — это любая сущность которыми можно управлять с помощью команд на языке программирования.
- Время — измерение времени, необходимого для выполнения операции.
Симптомы Ошибка 1004 — Ошибка, определяемая приложением или объектом
Ошибки времени выполнения происходят без предупреждения. Сообщение об ошибке может появиться на экране при любом запуске %программы%. Фактически, сообщение об ошибке или другое диалоговое окно может появляться снова и снова, если не принять меры на ранней стадии.
Возможны случаи удаления файлов или появления новых файлов. Хотя этот симптом в основном связан с заражением вирусом, его можно отнести к симптомам ошибки времени выполнения, поскольку заражение вирусом является одной из причин ошибки времени выполнения. Пользователь также может столкнуться с внезапным падением скорости интернет-соединения, но, опять же, это не всегда так.
(Только для примера)
Причины Ошибка, определяемая приложением или объектом — Ошибка 1004
При разработке программного обеспечения программисты составляют код, предвидя возникновение ошибок. Однако идеальных проектов не бывает, поскольку ошибки можно ожидать даже при самом лучшем дизайне программы. Глюки могут произойти во время выполнения программы, если определенная ошибка не была обнаружена и устранена во время проектирования и тестирования.
Ошибки во время выполнения обычно вызваны несовместимостью программ, запущенных в одно и то же время. Они также могут возникать из-за проблем с памятью, плохого графического драйвера или заражения вирусом. Каким бы ни был случай, проблему необходимо решить немедленно, чтобы избежать дальнейших проблем. Ниже приведены способы устранения ошибки.
Методы исправления
Ошибки времени выполнения могут быть раздражающими и постоянными, но это не совсем безнадежно, существует возможность ремонта. Вот способы сделать это.
Если метод ремонта вам подошел, пожалуйста, нажмите кнопку upvote слева от ответа, это позволит другим пользователям узнать, какой метод ремонта на данный момент работает лучше всего.
Обратите внимание: ни ErrorVault.com, ни его авторы не несут ответственности за результаты действий, предпринятых при использовании любого из методов ремонта, перечисленных на этой странице — вы выполняете эти шаги на свой страх и риск.
Метод 2 — Обновите / переустановите конфликтующие программы
Использование панели управления
- В Windows 7 нажмите кнопку «Пуск», затем нажмите «Панель управления», затем «Удалить программу».
- В Windows 8 нажмите кнопку «Пуск», затем прокрутите вниз и нажмите «Дополнительные настройки», затем нажмите «Панель управления»> «Удалить программу».
- Для Windows 10 просто введите «Панель управления» в поле поиска и щелкните результат, затем нажмите «Удалить программу».
- В разделе «Программы и компоненты» щелкните проблемную программу и нажмите «Обновить» или «Удалить».
- Если вы выбрали обновление, вам просто нужно будет следовать подсказке, чтобы завершить процесс, однако, если вы выбрали «Удалить», вы будете следовать подсказке, чтобы удалить, а затем повторно загрузить или использовать установочный диск приложения для переустановки. программа.
Использование других методов
- В Windows 7 список всех установленных программ можно найти, нажав кнопку «Пуск» и наведя указатель мыши на список, отображаемый на вкладке. Вы можете увидеть в этом списке утилиту для удаления программы. Вы можете продолжить и удалить с помощью утилит, доступных на этой вкладке.
- В Windows 10 вы можете нажать «Пуск», затем «Настройка», а затем — «Приложения».
- Прокрутите вниз, чтобы увидеть список приложений и функций, установленных на вашем компьютере.
- Щелкните программу, которая вызывает ошибку времени выполнения, затем вы можете удалить ее или щелкнуть Дополнительные параметры, чтобы сбросить приложение.
Метод 1 — Закройте конфликтующие программы
Когда вы получаете ошибку во время выполнения, имейте в виду, что это происходит из-за программ, которые конфликтуют друг с другом. Первое, что вы можете сделать, чтобы решить проблему, — это остановить эти конфликтующие программы.
- Откройте диспетчер задач, одновременно нажав Ctrl-Alt-Del. Это позволит вам увидеть список запущенных в данный момент программ.
- Перейдите на вкладку «Процессы» и остановите программы одну за другой, выделив каждую программу и нажав кнопку «Завершить процесс».
- Вам нужно будет следить за тем, будет ли сообщение об ошибке появляться каждый раз при остановке процесса.
- Как только вы определите, какая программа вызывает ошибку, вы можете перейти к следующему этапу устранения неполадок, переустановив приложение.
Метод 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 1004 (Application-defined or object-defined error) — Run-time error ‘1004’. Application-defined or object-defined error.
Wie beheben Fehler 1004 (Anwendungsdefinierter oder objektdefinierter Fehler) — Laufzeitfehler ‘1004’. Anwendungsdefinierter oder objektdefinierter Fehler.
Come fissare Errore 1004 (Errore definito dall’applicazione o dall’oggetto) — Errore di runtime ‘1004’. Errore definito dall’applicazione o dall’oggetto.
Hoe maak je Fout 1004 (Toepassingsgedefinieerde of objectgedefinieerde fout) — Runtime-fout ‘1004’. Door een toepassing gedefinieerde of door een object gedefinieerde fout.
Comment réparer Erreur 1004 (Erreur définie par l’application ou par l’objet) — Erreur d’exécution ‘1004’. Erreur définie par l’application ou par l’objet.
어떻게 고치는 지 오류 1004 (응용 프로그램 정의 또는 개체 정의 오류) — 런타임 오류 ‘1004’. 응용 프로그램 정의 또는 개체 정의 오류입니다.
Como corrigir o Erro 1004 (Erro definido pelo aplicativo ou definido pelo objeto) — Erro em tempo de execução ‘1004’. Erro definido pelo aplicativo ou definido pelo objeto.
Hur man åtgärdar Fel 1004 (Programdefinierat eller objektdefinierat fel) — Körtidsfel ‘1004’. Programdefinierat eller objektdefinierat fel.
Jak naprawić Błąd 1004 (Błąd zdefiniowany przez aplikację lub zdefiniowany przez obiekt) — Błąd wykonania „1004”. Błąd zdefiniowany przez aplikację lub obiekt.
Cómo arreglar Error 1004 (Error definido por la aplicación o definido por el objeto) — Error en tiempo de ejecución ‘1004’. Error definido por la aplicación o por el objeto.
Об авторе: Фил Харт является участником сообщества Microsoft с 2010 года. С текущим количеством баллов более 100 000 он внес более 3000 ответов на форумах Microsoft Support и создал почти 200 новых справочных статей в Technet Wiki.
Следуйте за нами:
Последнее обновление:
17/01/23 08:03 : Пользователь Windows 10 проголосовал за то, что метод восстановления 2 работает для него.
Этот инструмент восстановления может устранить такие распространенные проблемы компьютера, как синие экраны, сбои и замораживание, отсутствующие DLL-файлы, а также устранить повреждения от вредоносных программ/вирусов и многое другое путем замены поврежденных и отсутствующих системных файлов.
ШАГ 1:
Нажмите здесь, чтобы скачать и установите средство восстановления Windows.
ШАГ 2:
Нажмите на Start Scan и позвольте ему проанализировать ваше устройство.
ШАГ 3:
Нажмите на Repair All, чтобы устранить все обнаруженные проблемы.
СКАЧАТЬ СЕЙЧАС
Совместимость
Требования
1 Ghz CPU, 512 MB RAM, 40 GB HDD
Эта загрузка предлагает неограниченное бесплатное сканирование ПК с Windows. Полное восстановление системы начинается от $19,95.
ID статьи: ACX02492RU
Применяется к: Windows 10, Windows 8.1, Windows 7, Windows Vista, Windows XP, Windows 2000
Excel VBA Ошибка 1004
Ошибка VBA 1004 — это ошибка, с которой мы сталкиваемся при выполнении кода в VBA. Он также известен как ошибка времени выполнения VBA. Когда мы работаем в VBA или на любом другом языке программирования или даже в нашей повседневной работе, мы сталкиваемся с различными видами ошибок. Иногда даже мы пропускаем один символ в коде, что приводит к тому, что весь код не работает или, возможно, весь код неверен.
Ошибки, безусловно, являются частью кода, который мы пишем. Это может быть непреднамеренным, но они существуют. Независимо от того, насколько мы профессиональны в кодировании, ошибки во время выполнения могут возникнуть где угодно. Как объяснено выше VBA 1004 Ошибка — это ошибка, которая возникает во время выполнения кода в Excel. Это также называется ошибкой приложения или объекта.
Существуют различные типы причин, по которым мы получаем VBA Runtime Error 1004 в Excel, давайте рассмотрим некоторые из них.
- Ошибка выполнения VBA 1004: сбой метода «Диапазон» объекта «_ Global»:
Эта ошибка возникает, когда значение диапазона, которое мы ссылаемся на VBA, неверно. Он также называется метод «Диапазон» объекта «_ Global» не удалось.
- Ошибка выполнения VBA 1004: это имя уже занято. Попробуйте другой:
Мы присваиваем одно и то же имя рабочему листу, который уже занесен другим рабочим листом.
- Ошибка выполнения VBA 1004: невозможно получить свойство select класса Range:
Это ошибка, когда мы выбираем диапазон на другом листе, не активируя тот лист, на который мы ссылаемся.
- Ошибка выполнения VBA 1004: сбой метода «Открыть» объекта «Книги»:
Эта ошибка возникает, когда мы пытаемся открыть рабочую книгу, которая уже открыта, или файл уже используется другой программой.
- Ошибка выполнения VBA 1004: извините, мы не смогли найти:
Мы получаем эту ошибку, когда пытаемся открыть лист, который не существует.
Как мы узнали, могут быть разные причины, по которым мы получаем ошибку во время выполнения. Ошибка выполнения может возникнуть в любой строке кода. Нам нужно научиться обрабатывать эти ошибки, и это называется VBA Error Handling.
Пример VBA Runtime Ошибка 1004 в Excel
Теперь, когда я описал различные типы ошибок, которые могут возникать во время выполнения любого кода VBA, теперь давайте изучим их, как они выглядят на примерах.
Вы можете скачать этот шаблон Excel с ошибкой VBA 1004 здесь — Шаблон Excel с ошибкой VBA 1004
Ошибка выполнения VBA 1004 — Пример № 1
Как объяснено об этой ошибке, эта ошибка возникает, когда мы ссылаемся на неверное значение именованного диапазона в VBA. Это может произойти, если мы допустим орфографическую ошибку именованного диапазона, чтобы сослаться на диапазон, который даже не существует. Чтобы продемонстрировать это, давайте сначала создадим именованный диапазон. У меня есть следующие данные здесь.
- Давайте назовем этот заголовок таблицы как DATA .
- Перейдите на вкладку Разработчик, нажмите на Visual Basic, чтобы открыть VB Editor.
- Объявите подфункцию, чтобы начать писать код.
Код:
Sub Sample () End Sub
- Вызовите заголовок, который мы назвали следующим кодом, написанным ниже.
Код:
Sub Sample () Range ("Данные"). Выберите End Sub
- Когда мы запускаем код, мы видим в Excel, что он был выбран, поскольку мы правильно вызвали заголовок.
- Теперь мы неправильно написали орфографию имени заголовка.
Код:
Sub Sample () Range ("Dataa"). Выберите End Sub
- Запустите код еще раз, чтобы увидеть результат.
Мы получаем Excel VBA Runtime Ошибка 1004, потому что мы неправильно написали имя диапазона.
Ошибка выполнения VBA 1004 — Пример № 2
Мы получаем эту ошибку, когда пытаемся переименовать лист с именем, которое уже занято. Например, я переименовал лист 1 в « Ананд », и я постараюсь переименовать лист 2 в тот же, чтобы увидеть результат.
- Перейдите на вкладку Разработчик, нажмите на Visual Basic, чтобы открыть VB Editor.
- Объявите подфункцию, чтобы начать писать код.
Код:
Sub Sample1 () End Sub
- Попробуйте переименовать лист 2 в Anand с помощью следующего кода ниже,
Код:
Sub Sample1 () Worksheets ("Sheet2"). Name = "Anand" End Sub
- Запустите приведенный выше код и посмотрите результат.
Когда я пытаюсь переименовать лист с именем, которое уже занято, я получаю сообщение об ошибке.
Ошибка выполнения VBA 1004 — Пример № 3
Я попытаюсь добавить значение из листа 2 к переменной на листе 3. Но я не буду активировать лист 2 и посмотрю, что произойдет.
- Перейдите на вкладку Разработчик, нажмите на Visual Basic, чтобы открыть VB Editor.
- Объявите подфункцию, чтобы начать писать код.
Код:
Sub Sample2 () End Sub
- Объявите две переменные A и B как целое число.
Код:
Sub Sample2 () Dim A As Integer Dim B As Integer End Sub
- В переменной B сохраните значение A в дополнение к ячейке A1 листа 2.
Код:
Sub Sample2 () Dim A As Integer Dim B As Integer B = A + Рабочие листы ("Sheet2"). Диапазон ("A1"). Выберите End Sub
- Давайте предположим, что код работает, и используем функцию msgbox для отображения значения B.
Код:
Sub Sample2 () Dim A As Integer Dim B As Integer B = A + Рабочие листы ("Sheet2"). Диапазон ("A1"). Выберите MsgBox B End Sub
- Запустите код, чтобы увидеть полученный результат.
Мы получаем эту ошибку, потому что мы не активировали лист 2, но мы пытаемся использовать значение листа 2.
Ошибка выполнения VBA 1004 — Пример № 4
Мы сталкиваемся с этой ошибкой во время выполнения, когда у нас уже открыто одно и то же имя рабочей книги, но мы пытаемся открыть ее снова.
В этом примере я уже переименовал свою книгу в VBA 1004 Error.xlsm, и я попытаюсь снова открыть ее, которая уже открыта, и посмотреть, получу ли я ошибку VBA 1004.
- Перейдите на вкладку Разработчик, нажмите на Visual Basic, чтобы открыть VB Editor.
- Объявите подфункцию, чтобы начать писать код.
Код:
Sub Sample3 () End Sub
- Объявите переменную в качестве рабочей книги.
Код:
Sub Sample3 () Dim A As Workbook End Sub
Попробуйте открыть книгу, которую мы уже открыли, с помощью следующего кода.
Код:
Sub Sample3 () Dim A As Set Workbook Set wb = Workbooks.Open ("\ VBA 1004 Error.xlsm", ReadOnly: = True, CorruptLoad: = xlExtractData) End Sub
Запустите приведенный выше код, чтобы увидеть результат.
Мы получаем эту ошибку, потому что мы уже открыли ту же книгу.
Ошибка выполнения VBA 1004 — Пример № 5
Мы получаем эту ошибку, когда пытаемся открыть книгу, которой не существует. Это в некоторой степени похоже на приведенную выше ошибку, поскольку VBA не может найти книгу.
- Перейдите на вкладку Разработчик, нажмите на Visual Basic, чтобы открыть VB Editor.
- Объявите подфункцию, чтобы начать писать код.
Код:
Sub Sample4 () End Sub
- Попробуйте открыть любую книгу с помощью следующего кода,
Код:
Sub Sample4 () Workbooks.Open Filename: = "C: EDUCBA Content April VBA OR Function.xlsm" End Sub
- Я уже удалил лист с места.
- Запустите код, чтобы увидеть результат.
Поскольку лист не существует в данном месте, мы получаем эту ошибку.
То, что нужно запомнить
- Всегда проверяйте на наличие орфографических ошибок.
- Не переименовывайте несколько листов с одинаковыми именами.
- Перед звонком по любой другой ссылке обязательно активируйте соответствующий лист.
- Прежде чем пытаться открыть любой другой лист, убедитесь, что указан правильный путь.
Рекомендуемые статьи
Это было руководство к VBA 1004 Ошибка. Здесь мы обсудили Excel VBA Runtime Error 1004 вместе с практическими примерами и загружаемым шаблоном Excel. Вы также можете просмотреть наши другие предлагаемые статьи —
- Добавить или удалить панель ошибок в Excel
- VBA Пока Loop | MS Excel
- Понимание ошибок в Excel
- Использование IFError в VBA