Новости:

К первому сообщению темы должен быть прикреплен файл примера в формате xls*.
Приложив пример, Вы избавите себя и других от вопросов типа "А какой критерий?", "А куда выводить результат?", "А сколько строк?" и все тех же просьб выложить файл. Рисовать за Вас Ваши же таблички с заданиями, а затем и решение к ним, никто желанием не горит. Да и, как показывает практика, в большинстве случаев без файла решения не найти.

Главное меню

VBA:"With cmt.Shape.TextFrame.Characters.Font" выдает ошибку

Автор alexexcel, 28.06.2019, 18:07

« назад - далее »

alexexcel

"Application-defined or object-defined error"

Sub CommentAddOrEditTNR()
  Dim cmt As Comment
  Set cmt = ActiveCell.Comment
  If cmt Is Nothing Then
    ActiveCell.AddComment text:=""
    Set cmt = ActiveCell.Comment
    With cmt.Shape.TextFrame.Characters.Font
      .Name = "Times New Roman"
      .Size = 11
      .Bold = False
      .ColorIndex = 0
    End With
  End If
  SendKeys "+{F2}"
End Sub

В чем тут может быть дело? Excel 2016.

alexexcel

Может это быть, потому что это 64-битный эксель? Потому что в 32-битном это работает нормально.

boa

Вы бы пример приложили, как того требуют правила форума. Может и ответ быстреее бы получили...
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра

alexexcel

Спасибо за внимание к моему посту, но непонятно, какой пример я мог бы приложить. Макро и ошибку я приложил, а что еще можно?

Я нашел причину. При случайном нажатии CTRL+6 в Options -- Advanced -- Display options for this workbook активируется опция For objects, show: Nothing (hide objects). Эта опция и приводит к такому поведению. При этом также деактивируются элементы Аудита и еще некоторые вещи. Никогда не сталкивался с такой штукой. Странно, что эксель позволяет без всякого уведомления отключить кучу функций случайным нажатием клавиш и потом концы не найдешь даже при помощи экспертов, как показывает отсутствие ответа на мою проблему на этом форуме. Хотя казалось бы, почему может элементарное макро выдавать ошибку...