Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Access & Excel  [new]
VaRas
Member

Откуда:
Сообщений: 197
ребята, здесь
Set c = .Find("Уведомление", LookIn:=xlValues)


выскакивает ошибка
(438) Object doesn't support this property or method


сам код
Dim XL As Object 'Excel.Application
Dim WB As Object 'Excel.Workbook
Dim SH As Object 'Excel.Worksheet
Dim c As Object
Dim cRng As Object
  Set XL = CreateObject("Excel.Application")
  Set WB = XL.Workbooks.Open(ImaFile)
    
  Set SH = WB.Worksheets(1)
  'Set SH = WB.activeSheet
  
  With SH
  
    lLastRow = .Cells.SpecialCells(xlLastCell).Row
    lLastCol = .Cells.SpecialCells(xlLastCell).Column
  
  '----------- если документ не Уведомление - выходим
    Set c = .Find("Уведомление", LookIn:=xlValues) 'ОШИБКА
    
    If c Is Nothing Then
      Debug.Print "Документ не уведомление"
      GoTo lbl_exit
    End If
19 апр 19, 11:13    [21866922]     Ответить | Цитировать Сообщить модератору
 Re: Access & Excel  [new]
zimkon
Member

Откуда: guest_rusimport
Сообщений: 107
VaRas,
Вероятно, ошибка потому, что у объекта Worksheet нет метода Find
посмотрите здесь
https://www.sql.ru/forum/666327/poisk-znacheniya-v-eksel
19 апр 19, 11:21    [21866938]     Ответить | Цитировать Сообщить модератору
 Re: Access & Excel  [new]
Serg197311
Member

Откуда: Жуковский
Сообщений: 452
Я так понимаю - на листе ищем надпись"Уведомление"?
Dim XL As Object 'Excel.Application
Dim WB As Object 'Excel.Workbook
Dim SH As Object 'Excel.Worksheet

задать так как после апострофа написано

и

Dim c As string
19 апр 19, 11:22    [21866941]     Ответить | Цитировать Сообщить модератору
 Re: Access & Excel  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 4291
Serg197311
Dim c As string
Это чего?
19 апр 19, 11:32    [21866965]     Ответить | Цитировать Сообщить модератору
 Re: Access & Excel  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 19108
Find - это метод объекта Range, a не объекта Worksheet. Т.е. нужно нечто типа

Set c = .Range(Cells(1,1), .Cells.SpecialCells(xlLastCell)).Find("Уведомление", LookIn:=xlValues)
19 апр 19, 11:37    [21866976]     Ответить | Цитировать Сообщить модератору
 Re: Access & Excel  [new]
VaRas
Member

Откуда:
Сообщений: 197
Akina,
браво, так и есть
поместил код в ... и пошла вода
With .range(.Cells(1, 1), .Cells(lLastRow, lLastCol))
...
end with
19 апр 19, 11:40    [21866983]     Ответить | Цитировать Сообщить модератору
 Re: Access & Excel  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 4291
VaRas
браво
А кто это всё писал?
вот это
With .range(.Cells(1, 1), .Cells(lLastRow, lLastCol))

можно заменить на
With .UsedRange
19 апр 19, 12:01    [21867000]     Ответить | Цитировать Сообщить модератору
 Re: Access & Excel  [new]
VaRas
Member

Откуда:
Сообщений: 197
Панург,
Работает. Спасибо.
Взял на пометку
20 апр 19, 16:56    [21867825]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить