Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 28.10.2013
Сообщений: 3

Как из С# программно обработать Run-time error '1004' VBA кода книги Excel

28.10.2013, 21:22. Показов 1465. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Может кто подскажет, как программно в C# завершить работу макроса в книге Excel?

Существует книга со встроенными макросами, которая используется как темплейт (т.е. как ограничение - макросы в темплейте дописавыть не предполагается).
C# проект использует данный темплейт - изменяет данные в ячейках но при закрытии

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
                ... ...
                //Quite Exel and clean up.
                xlWorkBook.SaveCopyAs(aupd);
                xlWorkBook.Close();
                //System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorkBook);
                //xlWorkBook = null;
                //System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorkBook);
                //xlWorkBook = null;
 
                xlApp.Quit();
                //System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);
                //xlApp = null;
 
                MessageBox.Show("BD file has been created","smART has sent info to BD.", 
                    MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (System.Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.Message, "smART an error.",
                    System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
            }
в одной из процедур VBA (следящей за изменениями листа) происходит ошибка:

Run-time error '1004'.
Application-defined or object-defined error.


Ну и как обычно предлагается: End, Debug.
Собственно многократное нажатие 'End' приводит к желаемому результату и все данные из проекта C# переносятся в Excel темплейт.
Пожалуйста подскажите, как программно обработать это сообщение?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.10.2013, 21:22
Ответы с готовыми решениями:

Run-time error 1004. Запуск макроса excel в vba access
Добрый вечер! Прошу помочь разобраться в проблеме. Запускаю макрос test_union в базе данных (forum-bd11.accdb), который обращается к...

Проблема с формулами в VBA Excel: Run-time error 1004. Application defined or object-defined error
Здравствуйте. Я столкнулся с такой проблемой: я пишу вот такой код Cells(NStartOfMoneyChanels + iChannels *...

Формулы в Excel приводят к ошибке "Run-time error ''1004''"
Добрый день. никак не могу разобраться, потерялась в двух строках. Adr = Worksheets(NameStel).Cells(Stroka + 6,...

3
Неадекват
 Аватар для freeba
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
28.10.2013, 22:44
Сия ошибка вываливается если попытаться использовать в макросе несуществующие переменные. Что-то мне подсказывает, что шарп тут ни при чем.

PS: городить костыли устраняющие следствия, не лучшая идея.
0
0 / 0 / 0
Регистрация: 28.10.2013
Сообщений: 3
28.10.2013, 23:19  [ТС]
Цитата Сообщение от freeba Посмотреть сообщение
Сия ошибка вываливается если попытаться использовать в макросе несуществующие переменные. Что-то мне подсказывает, что шарп тут ни при чем.

PS: городить костыли устраняющие следствия, не лучшая идея.
Однозначно что ни причем, но похоже что в чужом макросе разобраться будет не легко.
0
0 / 0 / 0
Регистрация: 28.10.2013
Сообщений: 3
30.10.2013, 13:54  [ТС]
Может какое событие происходит, когда программно заполняется темплейт? Ведь если вбивать данные ручками ошибки в макросе не происходит...

Добавлено через 1 час 15 минут
Решил данный вопрос к сожалению суровым допиливанием макро программы в Exel:
Visual Basic
1
On Error Resume Next
в начале процедуры где возникала ошибка,правда при сохранении потерял цифровую подпись, того кто его писал
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.10.2013, 13:54
Помогаю со студенческими работами здесь

Run-time error 13 VBA Excel
Dim stroka As Integer, i As Integer Private Sub ComboBox3_Change() stroka = CInt(ComboBox3.Text)?показывает ошибку With...

Run-time error 1004
Добрый день! Сломала голову, выплывает ошибка. Есть аналогичный файл, с этим же кодом, там всё работает. В этом файле не хочет :( ...

Run-time Error 1004
Доброго дня! Мне нужно сгруппировать строки в таблице (ListObject), начинаю с ActiveSheet.Outline.SummaryRow = xlSummaryAbove ...

Run-time error 1004
На предприятий используется Екселевский фаил! привязан к базе Беста! И при формирований документов выводит Run-time error"1004"...

Run-time error '1004'
Камрады, Постепенно схожу с ума. Пытаюсь в Excel средствами VBA скопировать лист целиком из одной книги в другую. Вот код: Option...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru