VBA Tools

Połączenie wielu komentarzy przy scaleniu komórek

napisane przez Oskar w dniu poniedziałek, 26 Wrzesień, 2011, w kategorii Porady - Excel

W przypadku kiedy chcemy połączyć wiele komórek, które mają wpisany komentarz, jesteśmy narażeni na utratę ich części. Poniższe makro pobierze komentarze i połączy je w jeden z zachowaniem właściciela komentarza.

Option Explicit

Sub AllComment_AfterMargeCells()
'MVP OShon from VBATools.pl
Dim r As Range, coment As String, com As Comment, user$
For Each r In Selection
On Error Resume Next
 If Len(r.Comment.Text) > 0 Then
 If InStr(1, r.Comment.Text, Chr(10)) > 0 Then
 user = Split(r.Comment.Text, Chr(10))(0)
 coment = coment + Mid(r.Comment.Text, _
 InStr(1, r.Comment.Text, Chr(10)))
 Else
 coment = coment + r.Comment.Text
 End If
 coment = Replace(coment, Chr(10) & Chr(10), Chr(10))
 End If
Next r
On Error GoTo 0
Application.DisplayAlerts = False
 Selection.Merge
 With ActiveCell
 On Error Resume Next
 .Comment.Delete
 On Error GoTo 0
 .AddComment.Shape.SetShapesDefaultProperties
 .Comment.Text user & coment
 With .Comment.Shape.TextFrame
 .Characters(1, Len(coment & user)).Font.Bold = False
 .Characters(1, Len(user)).Font.Bold = True
 End With
 End With
End Sub

Polecamy zainteresowanym rozwiązanie w formie dodatku: Zarządzanie komentarzami w Excelu

(c) Shon Oskar – www.VBATools.pl

Wszelkie prawa zastrzeżone. Żadna część ani całość tego artykułu nie może być powielana ani publikowana bez zgody autora.

Podziel się ze znajomymi:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Blip
  • Grono
  • Gwar
  • Kciuk.pl
  • LinkedIn
  • MySpace
  • OSnews.pl
  • Śledzik
  • Spis.pl
  • Technorati
  • Twitter
  • Vala.pl
  • Wahacz.pl
  • Wykop

Wpisz swój komentarz:

Comment Spam Protection by WP-SpamFree