Macro Untuk Setting Comment Pada Microsoft Excel

Untuk melakukan perubahan / setting comment, Excel sendiri sudah menyediakan fasilitas dengan perintah “format Comment” yang dapat diakses dengan cara klik kanan pada comment box. 
Bagaimana Cara Pengaturan Kotak Komentar Excel
Melakukan setting comment dengan cara biasa/manual

Sayangnya dengan cara tersebut, prosesnya dilakukan satu persatu dan tentu saja akan memerlukan banyak waktu. Jika hanya ada 1 atau 2 comment yang harus diedit, mungkin tidak menjadi masalah. Bagaimana jika ada puluhan, ratusan, bahkan ribuan comment yang harus di-edit?

Cara manual tentunya bukan pilihan yang tepat, kecuali jika kita bersedia untuk lembur semalaman untuk mengerjakannya satu per satu.Bagi saya ini adalah pekerjaan yang sangat membosankan, apalagi tidak ada tuh yang namanya upah lembur...

Dengan macro dan VBA, pekerjaan tersebut jauh lebih mudah dan efisien. Contoh script berikut dapat digunakan untuk melakukan setting semua comment sekaligus dalam range yang diseleksi, atau dalam aktivesheet bahkan sekaligus dalam satu workbook. Anda dapat mengembangkan  property yang diatur sesuai kebutuhan

1.       Reset semua  posisi comment box

Posisi comment box biasanya berubah karena proses hide atau unhide row dan column, atau sengaja digeser untuk keperluan tertentu. Contoh code berikut dapat digunakan untuk reset posisi semua comment box pada kondisi standar.

a.       Reset posisi semua comment box dalam activesheet

'Code berikut ini akan mengembalikan posisi semua comment box pada sheet yang aktive menjadi keadaan standar/default

Sub resetCommentPosition_ws()
    Dim c As Comment, r As Range
    For Each c In ActiveSheet.Comments
        Set r = c.Parent
        c.Shape.Top = r.Top - 7
        c.Shape.Left = r.Offset(0, 1).Left + 11
    Next
End Sub

b.      Reset posisi semua comment box dalam activeworkbook

Code berikut ini akan mengembalikan posisi semua comment box pada semua sheet di dalam file excel yang sedang aktive menjadi keadaan standar/default


Sub resetCommentPosition_wb()
    Dim c As Comment, r As Range, ws As Worksheet
    For Each ws In ActiveWorkbook.Worksheets
    For Each c In ws.Comments
        Set r = c.Parent
        c.Shape.Top = r.Top - 7
        c.Shape.Left = r.Offset(0, 1).Left + 11
    Next
    Next
End Sub


2.       Setting Comment Font

a.       Set  format font comment  dalam lingkup activesheet

Sub setAllCommentFont()
Dim c As Comment
For Each c In ActiveSheet.Comments
    With c.Shape.TextFrame.Characters.Font
        .Name = "arial"
        .Size = 12
    End With
Next
End Sub

b.      Set font  comment dalam lingkup range yang diseleksi

Sub setSelectedCommentFont()
Dim c As Comment, r As Range
For Each r In Selection
    If Not (r.Comment Is Nothing) Then
        With r.Comment.Shape.TextFrame.Characters.Font
            .Name = "arial"
            .Size = 12
        End With
    End If
Next
End Sub

                Contoh code diatas dapat dikembangkan dan dimodifikasi dengan menambahkan atau mengganti dengan property comment object yang lainnya seperti: autosize, font.bold, font.color, margins dsb. Untuk mengetahui  code-code yang diperlukan dapat menggunakan record macro dan lakukan langkah edit format seperti biasa. Untuk menambah interaktivitas dapat juga ditambahkan fungsi inputbox. Misalnya  untuk menentukan nama font dan ukurannya.


Semoga bermanfaat...:-)
Belajar Excel..! Excellent..!

Comments

Popular posts from this blog

Rumus Excel Tidak Berfungsi ? Inilah Penyebabnya!

Memahami Rumus VLOOKUP Dengan Studi Kasus

Fungsi SUM dan Rumus Penjumlahan Pada Excel