17.03.15 — 16:02
в excel включаю запись макроса, выделяю несколько ячеек с зажатым ctrl, смотрю что получилось:
Range(«W13:Y13,AA13:AC13»).Select
пишу в 1с:
Документ.Листы[0].Range(«W13:Y13,AA13:AC13»).Select();
ругается на метод Range, не правильно использую?
1 — 17.03.15 — 16:12
Читаем справку — первая ссылка в яндексе:
Application.Union(Range(«Sheet1!A1:B2»), Range(«Sheet1!C3:D4»))
2 — 17.03.15 — 16:16
а какую ошибку выдает?
3 — 17.03.15 — 16:18
Ошибка при вызове метода контекста (Range)
Документ.Листы[0].Range(«W13:Y13,AA13:AC13»).Select();
по причине:
Произошла исключительная ситуация (0x800a03ec)
4 — 17.03.15 — 16:23
в документе у тебя должен лежать excel
попробуй
документ.Worksheets(«лист1»).Range(«A1,C3,E6,G8»).Select
или
документ.Worksheets(0).Range(«A1,C3,E6,G8»).Select
5 — 17.03.15 — 16:23
ну и про () в конце ессно не забудь 🙂
6 — 17.03.15 — 16:40
WorkBooks = EXCEL.WorkBooks.Open(ИмяФайла);
WorkBooks.Worksheets(0).Range(«A1,C3,E6,G8»).Select();
Ошибка при вызове метода контекста (Worksheets)
WorkBooks.Worksheets(0).Range(«A1,C3,E6,G8»).Select();
по причине:
Произошла исключительная ситуация (0x8002000b)
7 — 17.03.15 — 16:42
по имени листа пробывал обращаться?
8 — 17.03.15 — 16:43
Worksheets(«имя_листа»)
9 — 17.03.15 — 16:46
(8) получилось по имени, теперь ошибка RANGE
Произошла исключительная ситуация (0x800a03ec)
10 — 17.03.15 — 16:46
(3)
11 — 17.03.15 — 16:47
может у тебя куча excel мало ли не прибитых в памяти висит?
перегрузись от греза по дальше 🙂
так то код святая простота — должен робить
12 — 17.03.15 — 17:15
удалось выделить одну ячейку, если указываю список — происходит ошибка, вопрос, как выделить несколько ячеек?
13 — 17.03.15 — 17:17
(12) Ты читать-то умеешь? Ответ в первом сообщении дан.
14 — 17.03.15 — 17:23
(12) вот так :
WorkBooks.Worksheets(1).Range(«A1;B1;C1;D1;E1;F1;G1;H1;I1»).Select();
15 — 17.03.15 — 17:24
и да, нумерация листов начинается с 1 🙂
16 — 17.03.15 — 17:25
(14) спасибо! да, разделитель ;
mxs089
17 — 18.03.15 — 14:31
я так понимаю там есть ограничение на количество выделенных ячеек, более 18 не получается выделить, я вижу есть еще метод Area, кто нить использовал?
Эксель.COMОбъект.Selection.Areas(«W13:Y13;AA13:AC13»)
Ошибка
по причине:
Типы не совпадают (1)
I am getting «HRESULT: 0x800A03EC» error when running Excel add-in with following code:
Excel.Range rng = ActiveSheet.Cells[x, y] as Excel.Range;
string before = rng.Value2;
string cleanV = System.Text.RegularExpressions.Regex.Replace(before, @"s+", "");
rng.set_Value(cleanV);
When error happens X and Y are set to 1, thus Excel range is not violated.
I searched extensively and tried a number of ways of setting the cell value (eg. Cells[x,y], range.set_Value()) but am at loss why this error happens and how to avoid it.
Any help is greatly appreciated.
Below are exception details:
System.Runtime.InteropServices.COMException was unhandled by user code
HResult=-2146827284
Message=Exception from HRESULT: 0x800A03EC
Source=""
ErrorCode=-2146827284
StackTrace:
at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
at Microsoft.Office.Interop.Excel.Range.set_Value(Object RangeValueDataType, Object value)
at ImportValidation.ThisAddIn.removeAnySpaces(Int32 x, Int32 y) in c:UsersdshevelevDocumentsVisual Studio 2012ProjectsImportValidationImportValidationThisAddIn.cs:line 354
at ImportValidation.ThisAddIn.ReadHeaders(Hashtable columnAddress) in c:UsersdshevelevDocumentsVisual Studio 2012ProjectsImportValidationImportValidationThisAddIn.cs:line 123
at ImportValidation.ThisAddIn.mapColumns() in c:UsersdshevelevDocumentsVisual Studio 2012ProjectsImportValidationImportValidationThisAddIn.cs:line 493
at ImportValidation.Ribbon1.button6_Click(Object sender, RibbonControlEventArgs e) in c:UsersdshevelevDocumentsVisual Studio 2012ProjectsImportValidationImportValidationRibbon1.cs:line 55
at Microsoft.Office.Tools.Ribbon.RibbonPropertyStorage.ControlActionRaise(IRibbonControl control)
at Microsoft.Office.Tools.Ribbon.RibbonPropertyStorage.ButtonClickCallback(RibbonComponentImpl component, Object[] args)
at Microsoft.Office.Tools.Ribbon.RibbonManagerImpl.Invoke(RibbonComponentCallback callback, Object[] args)
at Microsoft.Office.Tools.Ribbon.RibbonMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Microsoft.Office.Tools.Ribbon.RibbonManagerImpl.System.Reflection.IReflect.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParameters)
InnerException:
I am getting «HRESULT: 0x800A03EC» error when running Excel add-in with following code:
Excel.Range rng = ActiveSheet.Cells[x, y] as Excel.Range;
string before = rng.Value2;
string cleanV = System.Text.RegularExpressions.Regex.Replace(before, @"s+", "");
rng.set_Value(cleanV);
When error happens X and Y are set to 1, thus Excel range is not violated.
I searched extensively and tried a number of ways of setting the cell value (eg. Cells[x,y], range.set_Value()) but am at loss why this error happens and how to avoid it.
Any help is greatly appreciated.
Below are exception details:
System.Runtime.InteropServices.COMException was unhandled by user code
HResult=-2146827284
Message=Exception from HRESULT: 0x800A03EC
Source=""
ErrorCode=-2146827284
StackTrace:
at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
at Microsoft.Office.Interop.Excel.Range.set_Value(Object RangeValueDataType, Object value)
at ImportValidation.ThisAddIn.removeAnySpaces(Int32 x, Int32 y) in c:UsersdshevelevDocumentsVisual Studio 2012ProjectsImportValidationImportValidationThisAddIn.cs:line 354
at ImportValidation.ThisAddIn.ReadHeaders(Hashtable columnAddress) in c:UsersdshevelevDocumentsVisual Studio 2012ProjectsImportValidationImportValidationThisAddIn.cs:line 123
at ImportValidation.ThisAddIn.mapColumns() in c:UsersdshevelevDocumentsVisual Studio 2012ProjectsImportValidationImportValidationThisAddIn.cs:line 493
at ImportValidation.Ribbon1.button6_Click(Object sender, RibbonControlEventArgs e) in c:UsersdshevelevDocumentsVisual Studio 2012ProjectsImportValidationImportValidationRibbon1.cs:line 55
at Microsoft.Office.Tools.Ribbon.RibbonPropertyStorage.ControlActionRaise(IRibbonControl control)
at Microsoft.Office.Tools.Ribbon.RibbonPropertyStorage.ButtonClickCallback(RibbonComponentImpl component, Object[] args)
at Microsoft.Office.Tools.Ribbon.RibbonManagerImpl.Invoke(RibbonComponentCallback callback, Object[] args)
at Microsoft.Office.Tools.Ribbon.RibbonMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Microsoft.Office.Tools.Ribbon.RibbonManagerImpl.System.Reflection.IReflect.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParameters)
InnerException:
I found a possible solution here: http://www.made4dotnet.com/Default.aspx?tabid=141&aid=15
Edit:
If you automate Microsoft Excel with Microsoft Visual Basic .NET, Microsoft Visual C# .NET, or Microsoft Visual C++, you may receive the following errors when calling certain methods because the machine has the locale set to something other than US English (locale ID or LCID 1033):
Exception from HRESULT: 0x800A03EC
and/or
Old format or invalid type library
SOLUTION 1:
To get around this error you can set CurrentCulture to en-US when executing code related to Excel and reset back to your originale by using these 2 functions.
//declare a variable to hold the CurrentCulture
System.Globalization.CultureInfo oldCI;
//get the old CurrenCulture and set the new, en-US
void SetNewCurrentCulture()
{
oldCI = System.Threading.Thread.CurrentThread.CurrentCulture;
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
}
//reset Current Culture back to the originale
void ResetCurrentCulture()
{
System.Threading.Thread.CurrentThread.CurrentCulture = oldCI;
}
SOLUTION 2:
Another solution that could work, create a 1033 directory under Microsoft OfficeOffice11 (or your corresponding office-version), copy excel.exe to the 1033 directory, and rename it to xllex.dll.
Although you might solve the problem using one off these solutions, when you call the Excel object model in locales other than US English, the Excel object model can act differently and your code can fail in ways you may not have thought of. For example, you might have code that sets the value of a range to a date:
yourRange.Value2 = «10/10/09»
Depending on the locale this code can act differently resulting in Excel putting into the range any of the following values:
October 10, 2009
September 10, 2009
October 9, 2010
| Номер ошибки: | Ошибка 0x800A03EC | |
| Название ошибки: | Excel ? Error Object Returned Error Code 0X800A03Ec | |
| Описание ошибки: | Ошибка 0x800A03EC: Возникла ошибка в приложении Microsoft Excel. Приложение будет закрыто. Приносим извинения за неудобства. | |
| Разработчик: | Microsoft Corporation | |
| Программное обеспечение: | Microsoft Excel | |
| Относится к: | Windows XP, Vista, 7, 8, 10, 11 |
Проверка «Excel ? Error Object Returned Error Code 0X800A03Ec»
Обычно люди ссылаются на «Excel ? Error Object Returned Error Code 0X800A03Ec» как на ошибку времени выполнения (ошибку). Разработчики, такие как Microsoft Corporation, обычно проходят через несколько контрольных точек перед запуском программного обеспечения, такого как Microsoft Excel. К сожалению, такие проблемы, как ошибка 0x800A03EC, могут быть пропущены, и программное обеспечение будет содержать эти проблемы при выпуске.
Некоторые пользователи могут столкнуться с сообщением «Excel ? Error Object Returned Error Code 0X800A03Ec» при использовании Microsoft Excel. Когда это происходит, конечные пользователи могут сообщить Microsoft Corporation о наличии ошибок «Excel ? Error Object Returned Error Code 0X800A03Ec». Разработчик сможет исправить свой исходный код и выпустить обновление на рынке. Эта ситуация происходит из-за обновления программного обеспечения Microsoft Excel является одним из решений ошибок 0x800A03EC ошибок и других проблем.
Как триггеры Runtime Error 0x800A03EC и что это такое?
Сбой устройства или Microsoft Excel обычно может проявляться с «Excel ? Error Object Returned Error Code 0X800A03Ec» в качестве проблемы во время выполнения. Следующие три наиболее значимые причины ошибок выполнения ошибки 0x800A03EC включают в себя:
Ошибка 0x800A03EC Crash — Ошибка 0x800A03EC является хорошо известной, которая происходит, когда неправильная строка кода компилируется в исходный код программы. Это возникает, когда Microsoft Excel не реагирует на ввод должным образом или не знает, какой вывод требуется взамен.
Утечка памяти «Excel ? Error Object Returned Error Code 0X800A03Ec» — если есть утечка памяти в Microsoft Excel, это может привести к тому, что ОС будет выглядеть вялой. Есть некоторые потенциальные проблемы, которые могут быть причиной получения проблем во время выполнения, с неправильным кодированием, приводящим к бесконечным циклам.
Ошибка 0x800A03EC Logic Error — Логическая ошибка вызывает неправильный вывод, даже если пользователь дал действительные входные данные. Это видно, когда исходный код Microsoft Corporation содержит недостаток в обработке данных.
Такие проблемы Excel ? Error Object Returned Error Code 0X800A03Ec обычно вызваны повреждением файла, связанного с Microsoft Excel, или, в некоторых случаях, его случайным или намеренным удалением. Основной способ решить эти проблемы вручную — заменить файл Microsoft Corporation новой копией. Более того, поддержание чистоты реестра и его оптимизация позволит предотвратить указание неверного пути к файлу (например Excel ? Error Object Returned Error Code 0X800A03Ec) и ссылок на расширения файлов. По этой причине мы рекомендуем регулярно выполнять очистку сканирования реестра.
Типичные ошибки Excel ? Error Object Returned Error Code 0X800A03Ec
Частичный список ошибок Excel ? Error Object Returned Error Code 0X800A03Ec Microsoft Excel:
- «Ошибка Excel ? Error Object Returned Error Code 0X800A03Ec. «
- «Недопустимая программа Win32: Excel ? Error Object Returned Error Code 0X800A03Ec»
- «Извините, Excel ? Error Object Returned Error Code 0X800A03Ec столкнулся с проблемой. «
- «К сожалению, мы не можем найти Excel ? Error Object Returned Error Code 0X800A03Ec. «
- «Отсутствует файл Excel ? Error Object Returned Error Code 0X800A03Ec.»
- «Проблема при запуске приложения: Excel ? Error Object Returned Error Code 0X800A03Ec. «
- «Не удается запустить Excel ? Error Object Returned Error Code 0X800A03Ec. «
- «Отказ Excel ? Error Object Returned Error Code 0X800A03Ec.»
- «Ошибка пути программного обеспечения: Excel ? Error Object Returned Error Code 0X800A03Ec. «
Эти сообщения об ошибках Microsoft Corporation могут появляться во время установки программы, в то время как программа, связанная с Excel ? Error Object Returned Error Code 0X800A03Ec (например, Microsoft Excel) работает, во время запуска или завершения работы Windows, или даже во время установки операционной системы Windows. При появлении ошибки Excel ? Error Object Returned Error Code 0X800A03Ec запишите вхождения для устранения неполадок Microsoft Excel и чтобы HelpMicrosoft Corporation найти причину.
Корень проблем Excel ? Error Object Returned Error Code 0X800A03Ec
Заражение вредоносными программами, недопустимые записи реестра Microsoft Excel или отсутствующие или поврежденные файлы Excel ? Error Object Returned Error Code 0X800A03Ec могут создать эти ошибки Excel ? Error Object Returned Error Code 0X800A03Ec.
Точнее, ошибки Excel ? Error Object Returned Error Code 0X800A03Ec, созданные из:
- Недопустимая или поврежденная запись Excel ? Error Object Returned Error Code 0X800A03Ec.
- Файл Excel ? Error Object Returned Error Code 0X800A03Ec поврежден от вирусной инфекции.
- Excel ? Error Object Returned Error Code 0X800A03Ec ошибочно удален или злонамеренно программным обеспечением, не связанным с приложением Microsoft Excel.
- Другое приложение, конфликтующее с Excel ? Error Object Returned Error Code 0X800A03Ec или другими общими ссылками.
- Microsoft Excel (Excel ? Error Object Returned Error Code 0X800A03Ec) поврежден во время загрузки или установки.
Продукт Solvusoft
Загрузка
WinThruster 2022 — Проверьте свой компьютер на наличие ошибок.
Совместима с Windows 2000, XP, Vista, 7, 8, 10 и 11
Установить необязательные продукты — WinThruster (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия | Удаление
Форум 1С : Все вопросы »
Загрузка данных в 1С
| ЮлияЮ |
|
||
|---|---|---|---|
|
|
При загрузке данных из Eхcel выдаёт ошибку «Произошла исключительная ошибка (0х800а03ес)», что сделать? Я новичок, ещё не очень разбираюсь в программе. |
| Yandex |
|
||
|---|---|---|---|
|
|
| all4cf |
|
||
|---|---|---|---|
|
|
Ошибка говорит о том что не может прочитать данные с ячейки файла, проверьте все ли строки и колонки в файле заполнены |
| Подсказка: Для выделения Кода используйте (в редакторе). |
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.
[ Главная | FAQ: Все | 7.х | 8.х | 8.2 УП | 8.3 | Видео | Files | Forum | Freelance | Поиск | Реклама на HelpF.pro | Обратная связь ]
HelpF.pro [old Help1C.com] 2009-2023 Все материалы, размещенные на сайте, добавлены посетителями сайта или взяты из свободных источников. Подробнее…
Здравствуйте! Подскажите, пожалуйста! Загружаю из Excel данные, хочу обратиться к именованной области, выдает следующую ошибку: «Ошибка при вызове метода контекста (Cells): Произошла исключительная ситуация (0x800a03ec)
ФайлСтрок = Excel.Cells(2,1).SpecialCells(21).Row;
по причине:
Произошла исключительная ситуация (0x800a03ec)»
Процедура ОсновныеДействияФормыЗагрузить(Кнопка)
НомерКолонкиАртикул = ЭлементыФормы.ТабличныйДокумент.Область(«R2C1»;
НомерКолонкиНаименованияТовара = ЭлементыФормы.ТабличныйДокумент.Область(«R2C2»;
НомерКолонкиЕдиницаИзмерения = ЭлементыФормы.ТабличныйДокумент.Область(«R2C3»;
НомерКолонкиСтрана = ЭлементыФормы.ТабличныйДокумент.Область(«R2C4»;
//В разных версиях Excel получаются по-разному, поэтому сначала определим версию Excel
Excel = новый COMОбъект(«Excel.Application»;
Версия = Лев(Excel.Version,Найти(Excel.Version,».»-1);
Если Версия = «8» тогда
ФайлСтрок = Excel.Cells.CurrentRegion.Rows.Count;
ФайлКолонок = Макс(Excel.Cells.CurrentRegion.Columns.Count, 13);
Иначе
ФайлСтрок = Excel.Cells(2,1).SpecialCells(21).Row;
ФайлКолонок = Excel.Cells(2,1).SpecialCells(21).Column;
Конецесли;
// Выбираем данные из файла
Для а = Excel.Cells(2,1).SpecialCells(21).Row по ФайлСтрок Цикл
//Полуим данные из соответсвующих ячеек
Артикул = СокрЛП(Excel.Cells(а,Артикул).Value);
НаименованиеТовара = СокрЛП(Excel.Cells(а,НомерКолонкиНаименованияТовара).Value);
ЕдиницаИзмерения = СокрЛП(Excel.Cells(а,НомерКолонкиЕдиницаИзмерения).Value);
Товар = Справочники.Номенклатура.ПустаяСсылка();
// Ищем товар в справочнике по коду
Товар = Справочники.Номенклатура.НайтиПоКоду.Артикул;
// Если не нашли по коду, то ищем по наименованию
Если Товар.Пустая() Тогда
Товар = Справочники.Номенклатура.НайтиПоНаименованию.Наименование;
Конецесли;
//Если не нашли создаем новый
Если Товар.Пустая() Тогда
Товар = Справочники.Номенклатура.СоздатьЭлемент();
Товар.Наименование = НаименованиеТовара;
Товар.Артикул = Артикул;
Товар.БазоваяЕдиницаИзмерения = ЕдиницаИзмерения;
Товар.СтранаПроисхождения = НомерКолонкиСтрана;
Товар.Записать();
Конецесли;
КонецЦикла;
КонецПроцедуры
Сильно не пинать, только учусь. Делаю выгрузку прайсов в ексель. Есть заминка на куске кода Колонка = Прайс.Столбцы.Найти(«Примечание»); погуглил текст ошибки — несоответствие типов данных. но какое у меня может быть не соответствие не могу понять. передаю область, передаю ссылку, передаю представление ссылки — все поля текстовые. Подскажите кто в курсе, в какую сторону рыть хотя бы, а лучше носом ткните в ошибку)
а где это делается? В модуле объекта? Что есть ссылка в данном контексте?
это делается в модуле формы. ссылка формируется из «константы» + «код номенклатуры» + «.html» ссылка на номенклатуру на сайте.
ws.Hyperlinks.add нормально относится к первому параметру? Это же объект, не текст?
к первому параметру относится нормально. в отладчике проверяю в ws.cells(НомерСтроки + СчетчикТекРаздела, Колонка.НомерКолонки) все нормально.
Ошибка при вызове метода Add или Cells? Думается мне, что всё-таки дело в кривых параметрах именно Cells…
+6 Помести результат вызова Cells в переменную, тогда однозначно будет понятно, в чём ошибка: range = ws.cells(НомерСтроки + СчетчикТекРаздела, Колонка.НомерКолонки);
да я же говорю в cells все ок. в отладчике глядел — получается область, адрес ячейки верный. голову уже сломал — не могу понять где бок.
На вопрос из ответа мы так и не узнали.
Ошибки как таковой нет. отладчик проходит код и двигает дальше. только в єкселе в ячейках вместо данных ошибка «Произошла исключительная ситуация (0x800a03ec)»
а что макрос екселевский по этому поводу напишет? если гиперссылку лапками в клеточки под его микрофон?
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
