votdymor
1

Поиск Из Lotus В Excel

12.09.2012, 11:48. Показов 7676. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день!
Для более оперативной организации импорта данных из книги Excel в БД Lotus решил воспользоваться функцией VBA find:

Set view = db.GetView( "viewByPersonFullName" )
Set PersonDoc = view.GetFirstDocument

Do While Not (PersonDoc Is Nothyng)

tempPersonID = PersonDoc.GetItemValue("fldPersonId")(0)
Set tempFindPerson = ExcelWorkSheet.Columns(6).Find(tempPersonID, xlValues, xlPrevious, xlByRows)
Set tempFindPerson = ExcelWorkSheet.Columns(6).Find(tempPersonID, "", -4123, 1, 1, 1, False, False)

If tempFindPerson Is Nothyng Then
Call PersonDoc.ReplaceItemValue("fldPersonStatus", "Уволен")
End If

Set PersonDoc = view.GetNextDocument(PersonDoc)

Loop

Во время выполнения агента, появляется ошибка "automation object error" на строке поиска Set tempFindPerson =, не могу разобраться почему, толи неправильно параметры передаю, толи ещё что то.
В чём может быть причина ошибки?

Спасибо!
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.09.2012, 11:48
Ответы с готовыми решениями:

Lotus + Excel
Гуру, добрый день. Пытаюсь найти решение вопроса на форму - не получается. Хочу определить,...

Lotus And Excel
Здравствуйте, Нашел список какие поддерживаются версии лотуса саппортом. А вот нужно узнать...

Lotus и Excel
Расклад следующий: в лотусе сделал агент по экспорту данных в Excel. (результат - несколько...

Lotus & Excel
Всем привет! Постановка задачи: юзер, инициирует запрос к ораклу, после откривается ексель и...

3
0 / 0 / 0
Регистрация: 12.10.2007
Сообщений: 522
12.09.2012, 12:38 2
Может Find\FindNext подойдет?


Код
Set xlR=CreateObject("Excel.Application")
Call xlR.Workbooks.Open(filename,0,0)
Set xlRWbk = xlR.ActiveSheet



tmpLastRow=0
tmpLastColumn=0
tmpText=Format(xlRWbk.Range("A1").Value,"0;0%")
If Instr(tmpText,"408")>0 Then
tmpRow=1
tmpColumn=1
sus=sus+HowManyAccounts(tmpText)
xlR.Cells.Find("408").Select
Else
xlR.Cells.Find("408").Select
tmpRow=xlR.Selection.Row
tmpColumn=xlR.Selection.Column
tmpText=Format(xlRWbk.Cells(tmpRow,tmpColumn).Value,"0;0%")
End If

xlR.Cells.FindNext(xlR.Selection).Select
tmpRow=xlR.Selection.Row
tmpColumn=xlR.Selection.Column
0
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
12.09.2012, 13:49 3
http://jexcelapi.sourceforge.net/resources...t,%20boolean%29
и хехель не нужен ;)
0
kutzhomov
08.01.2013, 09:30 4
На будущее:
В данном случае агент выдает ошибку automation object error если искомое выражение не найдено.
Для проверки пробуем за место tempPersonID подставить к-нибудь значение, к-ое точно имеется в документе Excel, тогда функция не выдаст ошибку.
Поэтому перед функцией ставим обработчик ошибок, н-р:
on error resume next
а дальше проверка правильная.
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.01.2013, 09:30
Помогаю со студенческими работами здесь

Evaluate Excel В Lotus
В макросах EXCEL Result =Sheets(2).Evaluate("SUM(F10:F14)") отрабатывает нормально и возвращает...

Import From Excel To Lotus
Народ пытаюсь вытянуть некоторые данные из Excel в Лотус.Подключаюсь с помощью ODBC драйвера,в...

Импорт из Excel в Lotus
Подскажите плз… Наши юрики решили вести свой реестр дел в Lotus, раньше они делали это в Excel....

Импортные операции. Из Excel в Lotus
Как это сделать? Имеем: 1. Готовую базу в Lotus 2. Шаблон документа в Excel. Надо из отдельных...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru