Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Использование ObjectName с ActiveCell - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Использование ObjectName с ActiveCell (Макросы/Sub)
Использование ObjectName с ActiveCell
Leprotto Дата: Среда, 19.04.2017, 10:23 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 145
Репутация: 2 ±
Замечаний: 0% ±

Excel 2016
Доброе утро!
В access прописывал доступ к файлу excel. Макрос зависал и я нашел в сети, что в коде файла excel
к ActiveCell нужно добавить ObjectName. Макрос access перестал зависать, но теперь не работает код excel:
[vba]
Код
Sub plusOn()
  Dim shtF As Worksheet
  Set shtF = ThisWorkbook.Sheets("Функции")
  
  If ObjectName.ActiveCell.Value = "+" Then
    shtF.Range("E1").Value = ObjectName.ActiveCell.Offset(0, -2).Value
    shtF.Range("E2").Value = ObjectName.ActiveCell.Offset(0, -1).Value
  Else
    Exit Sub
  End If
  
  'и тд...
End Sub
[/vba]
Подскажите что нужно добавить/поправить? (пробовал тупо добавить "Dim ObjectName", не помогло)
К сообщению приложен файл: activeCell.xlsm (15.3 Kb)
 
Ответить
СообщениеДоброе утро!
В access прописывал доступ к файлу excel. Макрос зависал и я нашел в сети, что в коде файла excel
к ActiveCell нужно добавить ObjectName. Макрос access перестал зависать, но теперь не работает код excel:
[vba]
Код
Sub plusOn()
  Dim shtF As Worksheet
  Set shtF = ThisWorkbook.Sheets("Функции")
  
  If ObjectName.ActiveCell.Value = "+" Then
    shtF.Range("E1").Value = ObjectName.ActiveCell.Offset(0, -2).Value
    shtF.Range("E2").Value = ObjectName.ActiveCell.Offset(0, -1).Value
  Else
    Exit Sub
  End If
  
  'и тд...
End Sub
[/vba]
Подскажите что нужно добавить/поправить? (пробовал тупо добавить "Dim ObjectName", не помогло)

Автор - Leprotto
Дата добавления - 19.04.2017 в 10:23
RAN Дата: Среда, 19.04.2017, 10:42 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
ActiveCell - это активная ячейка. Она в книге одна, и расположена всегда на активном листе.
к ActiveCell нужно добавить ObjectName

Добавление чего-либо, ничего, кроме ошибки, не даст.
В вашем коде ObjectName - это не что-либо из языка VBA, а просто произвольная переменная.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеActiveCell - это активная ячейка. Она в книге одна, и расположена всегда на активном листе.
к ActiveCell нужно добавить ObjectName

Добавление чего-либо, ничего, кроме ошибки, не даст.
В вашем коде ObjectName - это не что-либо из языка VBA, а просто произвольная переменная.

Автор - RAN
Дата добавления - 19.04.2017 в 10:42
Leprotto Дата: Среда, 19.04.2017, 11:59 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 145
Репутация: 2 ±
Замечаний: 0% ±

Excel 2016
RAN, понял, спасибо! похоже надо переписать саб файла эксель без использования ActiveCell
 
Ответить
СообщениеRAN, понял, спасибо! похоже надо переписать саб файла эксель без использования ActiveCell

Автор - Leprotto
Дата добавления - 19.04.2017 в 11:59
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Использование ObjectName с ActiveCell (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!