Страницы: 1
RSS
Как вывести примечание ячейки в саму ячейку?
 
Как вывести примечание ячейки в саму ячейку автоматически, так как листов с такими ячейками-примечаниями очень много, и делать вручную напряжно.  
Заранее спасибо
 
только макросом
 
это понятно, тока каким?
 
Когда-то давно написал себе такой макрос, который будет переносить текст из комментарий в ячейку, в которой находится комментарий  
 
Sub Комментарий_в_ячейку_в_диапазоне()  
'переносит комментарий в ячейку  
Dim i As Long  
Dim c As Range, cc As Range  
Dim iCommment As Comments  
   Application.DisplayCommentIndicator = xlCommentIndicatorOnly  
   Application.ScreenUpdating = False  
   Application.Calculation = xlCalculationManual  
   Set cc = Selection  
   'если выделили 1 ячейку, то выход  
   If cc.Rows.Count = 1 And cc.Columns.Count = 1 Then  
       MsgBox "Выделено слишком мало ячеек!", , "Ошибка"  
       End  
   End If  
   Set cc = Selection.SpecialCells(xlCellTypeVisible)  
   For Each c In cc  
       If Not c.Comment Is Nothing Then  
               c.Value = c.Comment.Text  
              'c.ClearComments 'если надо удалить комментарий  
               i = i + 1  
           End If  
       End If  
   Next  
   Application.Calculation = xlCalculationAutomatic  
   Application.ScreenUpdating = True  
   MsgBox "Перенесено " & i & " комментариев!"  
   Exit Sub  
End Sub  
 
 
 
P.S. А перенос значений из ячейки в комментарий, так  
 
Sub Добавить_комментарий_в_диапазоне()  
'копирует значение ячейки в комментарий в видемом диапазоне  
   Dim c As Range, cc As Range  
   Dim i As Long  
   On Error GoTo ErrorHandler  
   Application.DisplayCommentIndicator = xlCommentIndicatorOnly  
   Set cc = Selection  
   'если выделили 1 ячейку, то выход  
   If cc.Rows.Count = 1 And cc.Columns.Count = 1 Then  
       MsgBox "Выделено слишком мало ячеек!", , "Ошибка"  
       End  
   End If  
   Set cc = Selection.SpecialCells(xlCellTypeVisible)  
   For Each c In cc  
       If c.Value <> Empty Then  
           c.AddComment CStr(c.Value)  
           i = i + 1  
       End If  
   Next  
   MsgBox "Добавлено " & i & " комментарий!"  
   Exit Sub  
End Sub
 
на этом месте выдает ошибку  
End If  
End If
 
Удали одну _ End If
 
а макрорекордер зачем?  
 
Sub макрос()  
Dim c As Object  
For Each c In Range("a1:a2").Cells  
c.Value = c.Comment.Text  
Next  
End Sub
 
Да спасибо, я уже сама сообразила, что одну строчку надо убрать и все сделала, на работе все радуются и горюют одновременно, если бы сделала раньше, то многим людям не пришлось мучаться полдня.  
Спасибо огромное!!!!
 
Sub Comment_in_Cell()  
Dim c As Object  
Dim r As Range  
If ActiveSheet.Comments.Count = 0 Then MsgBox "Без комментариев!": Exit Sub  
Set r = Range(Cells(1, 1), Cells(Cells.Find("*", [A1], xlComments, , xlByRows, _
   xlPrevious).Row, Cells.Find("*", [A1], xlComments, , xlColumns, _
   xlPrevious).Column))  
For Each c In r  
If Not c.Comment Is Nothing Then  
c.Value = c.Comment.Text  
End If  
Next  
End Sub
 
Здравствуйте.  
А как сделать, чтобы примечание копировалось не в ту же ячейку, а в любую другую наперед заданную(чтобы не смешивать примечание и значения ячеек).  
Спасибо.
 
{quote}{login=Серж}{date=27.12.2008 09:43}{thema=}{post}Здравствуйте.  
А как сделать, чтобы примечание копировалось не в ту же ячейку, а в любую другую наперед заданную(чтобы не смешивать примечание и значения ячеек).  
Спасибо.{/post}{/quote}Что такое "любая другая наперед заданная" неизвестно, поэтому решил создавать новый лист и комментарии переносить в ячейки с теми же адресами.  
На основе от макроса VikNik:  
Sub Comment_in_Cell()  
Dim c As Range  
Dim r As Range  
If ActiveSheet.Comments.Count = 0 Then MsgBox "Без комментариев!": Exit Sub  
Set sh = ActiveSheet  
Set shnew = Sheets.Add  
sh.Select  
Set r = Range(Cells(1, 1), Cells(Cells.Find("*", [A1], xlComments, , xlByRows, _
xlPrevious).Row, Cells.Find("*", [A1], xlComments, , xlColumns, _
xlPrevious).Column))  
For Each c In r  
If Not c.Comment Is Nothing Then  
shnew.Range(c.Address) = c.Comment.Text  
End If  
Next  
End Sub
Bite my shiny metal ass!      
 
Лузер, я по другому вопросу: а если отписатьсся где-нибудь в комментах в разделе Блог, то что будет отображаться? Ник? У меня разные подписи получаются.
 
{quote}{login=Юрий М}{date=27.12.2008 11:46}{thema=}{post}Лузер, я по другому вопросу: а если отписатьсся где-нибудь в комментах в разделе Блог, то что будет отображаться? Ник? У меня разные подписи получаются.{/post}{/quote}Там же просто поле для ввода имени, разве нет? Что логинился, что нет - ввод в поле доступен, в отличие от форума.
Bite my shiny metal ass!      
 
Здесь у меня отображается Логин, а в комментах Блога - имя
 
{quote}{login=Юрий М}{date=27.12.2008 12:04}{thema=}{post}Здесь у меня отображается Логин, а в комментах Блога - имя{/post}{/quote}Забавно. У меня и там, и там логин. До переезда на новый сервер здесь был псевдоним, а в блогах логин.
Bite my shiny metal ass!      
 
А у меня псевдоним вообще не указан (я вообще не знаю, что это такое на этом сайте)
Страницы: 1
Читают тему
Наверх