Mengatasi Border Cell Putus-putus saat dibuka di Excel – LibreOffice Calc

Saat menggunakan LibreOffice Calc, saya sering mengalami masalah terkait Border Cell yang hasilnya putus-putus jika dibuka di Ms.Excel, maupun WPS Office. Bahkan hingga versi terbaru (6.0.3 saat saya menuliskan ini) kejadian ini tetap terjadi. Awalnya saya kira ini adalah bug yang dimiliki dari LibreOffice Calc. Namun setelah mencari referensi dari sana ke sini, ternyata itu bukanlah sebuah bug. Lalu mengapa hal tersebut bisa terjadi? Berikut ini penjelasannya.

Border Cell LibreOffice Calc Terlalu Tipis

Pada  Ms.Office Excel maupun WPS Office Spreadsheet, pengaturan jenis dan ketebalan border masih bersifat global, sementara pada LibreOffice Calc, kita dapat mengatur nilai ketebalan border Cell secara spesifik.
Jika diamati saat cetak dokumen, ketebalan garis border pada LibreOffice Calc sangat tipis daripada yang dihasilkan dari Excel. Secara default, ketebalan garis pada border LibreOffice Calc adalah 0.05 pt, sementara Excel dan WPS memiliki ketebalan default sebesar 0,75 pt. Inilah yang menyebabkan border yang dibuat dari LibreOffice Calc akan terlihat putus-putus (dashed) jika dibuka menggunakan Excel.

Border Cell terlihat putus-putus saat dibuka di WPS Office

Solusi

Bagaimana mengatasi hal tersebut? salah satu solusinya adalah mengatur ketebalan border melalui menu Format Cells ( atau tekan Ctrl + 1 ) dan atur ketebalan border menjadi 0,75pt. Hanya saja, sampai saat ini kita tidak dapat mengubah nilai ketebalan border secara default. 

Solusi menggunakan Macro

Cukup merepotkan apabila kita mesti melakukan Klik kanan, format Cell, kemudian mengatur ketebalan border. Alternatif lainnya adalah menggunakan macro. Caranya adalah buka menu Tools > Macros > Edit Macro, kemudian Salin dan tempel kode berikut:

rem -- Macro untuk mengatur Border Cell --

sub BorderThick
rem ----------------------------------------------------------------------
rem Sub ini untuk mengatur border luar saja
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(3) as new com.sun.star.beans.PropertyValue
args1(0).Name = "OuterBorder.LeftBorder"
args1(0).Value = Array(0,0,26,0)
args1(1).Name = "OuterBorder.RightBorder"
args1(1).Value = Array(0,0,26,0)
args1(2).Name = "OuterBorder.TopBorder"
args1(2).Value = Array(0,0,26,0)
args1(3).Name = "OuterBorder.BottomBorder"
args1(3).Value = Array(0,0,26,0)

dispatcher.executeDispatch(document, ".uno:SetBorderStyle", "", 0, args1())

end sub

sub BorderThickFull
rem ----------------------------------------------------------------------
rem Sub ini untuk mengatur border luar dan dalam
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(5) as new com.sun.star.beans.PropertyValue
args1(0).Name = "OuterBorder.LeftBorder"
args1(0).Value = Array(0,0,26,0)
args1(1).Name = "OuterBorder.RightBorder"
args1(1).Value = Array(0,0,26,0)
args1(2).Name = "OuterBorder.TopBorder"
args1(2).Value = Array(0,0,26,0)
args1(3).Name = "OuterBorder.BottomBorder"
args1(3).Value = Array(0,0,26,0)
args1(4).Name = "InnerBorder.Horizontal"
args1(4).Value = Array(0,0,26,0)
args1(5).Name = "InnerBorder.Vertical"
args1(5).Value = Array(0,0,26,0)


dispatcher.executeDispatch(document, ".uno:SetBorderStyle", "", 0, args1())


end sub

Kemudian tutup Jendela Basic. Sampai di sini sebenarnya kita sudah bisa menjalankan macro tersebut dengan memilih Tools > Macros > Run Macro kemudian pilih nama macro yang hendak dijalankan.

Namun langkah tersebut masih kurang praktis, untuk itu kita dapat menambah pintasan keyboard melalui menu Tools > Customize dan pilih Tab Keyboard. Pilih Shortcut Keys yang tidak terpakai (pada contoh ini, saya menggunakan Ctrl+0 Untuk macro BorderThick dan Ctrl+9 untuk macro BorderThickFull ) kemudian pada Category Pilih LibreOffice Macros > MyMacros > Standard > Module1 , pilih Nama Function yang dikehendaki, lalu klik Modify. Hasilnya seperti gambar berikut:

Menambahkan Shortcut Macro yang telah dibuat

Jika sudah selesai, klik OK dan … Selamat! Anda sudah dapat mengatasi problem ini.

Tinggalkan komentar

%d blogger menyukai ini: