Страницы: 1
RSS
Как программно открыть окошко примечания для записи?
 
Как программно открыть окошко примечания для записи для активной ячейки?  
 
Application.Dialogs(xlDialogNote).Show - не работает...
 
Вы про примечания?  
ActiveCell.Comment.Visible = True
 
Один раз окошко открылось, ввел запись, а потом, при попытке использовать в другоих ячейках, появдяется ошибка 91...    
 
Код такой:  
Private Sub CommandButton12_Click()  
ActiveCell.Comment.Visible = True  
End Sub
 
{quote}{login=andre532}{date=04.05.2012 03:51}{thema=}{post}Один раз окошко открылось, ввел запись, а потом, при попытке использовать в других ячейках, появляется ошибка 91... {/post}{/quote}А там примечание есть? Мой код сделает видимым только ИМЕЮЩЕЕСЯ примечание. Если же Вам требуется СОЗДАВАТЬ примечание - запишите это действие макрорекордером.
 
Я уже пробовал использовать макрорекодер. Но код, записанный макрорекодером не показывает как можно просто программно ОТКРЫТЬ окошко для записи(или редактирования) примечания для ЛЮБОЙ ячейки и на этом остановиться.
 
Что значит "не даёт"? Создание примечания получается? А затем делайте его видимым.  
Sub Макрос()  
   With ActiveCell  
       .AddComment  
       .Comment.Visible = True  
'        .Comment.Text Text:="Ю.М.:" & Chr(10) & "Мой текст примечания"  
   End With  
End Sub  
Можно заполнить примечание программно - раскомментируйте строку.
 
Sub Comm()  
With ActiveCell  
   .AddComment  
   .Comment.Visible = True  
End With  
End Sub
Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете?
 
Спасибо, окно комментария открывается, текст вводится... но такое впечатление, что примечание остается открытым навечно...Т.е. можно программно ввести примечание и в другую ячейку, но при этом предыдущее окно почему-то не закрывается...
 
Private Sub Worksheet_SelectionChange(ByVal Target As Range)  
   Dim rR As Range  
   For Each rR In ActiveSheet.UsedRange  
       On Error Resume Next  
       If rR.Comment.Visible = True Then rR.Comment.Visible = False  
   Next  
End Sub
Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете?
 
Или так, всё в книгу:  
 
Option Explicit  
 
Sub Comm()  
   With ActiveCell  
       .AddComment  
       .Comment.Visible = True  
   End With  
End Sub  
 
 
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal rR As Range)  
   On Error Resume Next  
   For Each rR In ActiveSheet.UsedRange  
       rR.Comment.Visible = False  
   Next  
End Sub
Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете?
 
{quote}{login=}{date=04.05.2012 09:30}{thema=}{post}Т.е. можно программно ввести примечание и в другую ячейку, но при этом предыдущее окно почему-то не закрывается...{/post}{/quote}Я что-то не пойму, что Вам нужно: изначально вопрос был поставлен так:  
"Как программно открыть окошко примечания для записи для активной ячейки?"  
Вам показали - .Comment.Visible = True  
Скрыть его - .Comment.Visible = False  
В чём проблема?
 
Идеи понял. Всем спасибо! Тема закрыта.
 
Агент F1 сообщает:  
SHIFT+F2 Перейти к правке примечания ячейки  
 
Соответственно,  
Application.SendKeys "+{F2}"
Страницы: 1
Читают тему
Наверх