Zamiana właściciela komentarza
by vbatools on May.26, 2011, under Excel, Porady
Chęć zmiany właściciela komentarza, jest procesem dość podejrzanym, jednakże w przypadku kiedy użytkujemy kilka jednostek zdarza się że przygotowany wcześniej materiał wypada u standaryzować. W przypadku kilku komentarzy edycja wpisanej przez automat nazwy użytkownika ręcznie jest uciążliwe, lecz możliwe. Lecz gdy ich jest już kilkanaście/kilkadziesiąt to praca taka bezsensownie się wydłuża.
W tym przypadku pomocny może być kod VBA, który sprawdzi czy jest wpisana informacja o użytkowniku i wycinając go wstawi aktualnie obowiązujący z zachowaniem jednakowego formatowania wpisu. Procedura odnosi się do wszystkich komentarzy wpisanych w aktywnym arkuszu.
Rys.1 Zamiana przed i po wykonaniu poniższego kodu
Option Explicit Sub Zamiana_wlasciciela_komentarzy() 'MVP OShon from VBATools.pl Dim tekst$, dlK&, pozDwu& Dim kom As Range, user$ With Application user = .UserName .ScreenUpdating = False End With For Each kom In ThisWorkbook.Worksheets(ActiveSheet.Name).Range(Cells(1, 1), _ Cells.SpecialCells(xlLastCell).Address) On Error Resume Next dlK = 0 dlK = Len(kom.Comment.Text) tekst = kom.Comment.Text On Error GoTo 0 If dlK = 0 Then GoTo dalej pozDwu = InStr(1, tekst, Chr(10)) tekst = Mid(tekst, pozDwu + 1, Len(tekst) - pozDwu) With kom On Error Resume Next .Comment.Delete On Error GoTo 0 .AddComment .Comment.Text Text:=user & ":" & Chr(10) & tekst .Comment.Shape.TextFrame.Characters(1, Len(user)+1).Font.Bold = True End With dalej: Next kom Application.ScreenUpdating = True End Sub
Zawarte tutaj udogodnienie zostało wdrożone w 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.