2006年06月8日
[OOo] 表格製作的快速鍵巨集
同事在試用OpenOffice Writer時抱怨表格的製作比Word麻煩許多,例如手繪表格可以很方便且直覺的隨意畫出需要的表格,而Writer則必須較頻繁的用合併與分開儲存格,經由繁瑣的步驟才能完成表格。
經過分析,手繪表格最常使用到的狀況是:
巨集製作完畢後,再用【工具→自訂→鍵盤】,在下方的【功能→範圍】裡找到OpenOffice.org巨集,將製作好的巨集變更給要使用的功能鍵。
雖然Writer目前並無手繪表格的功能,但透過功能鍵應該也能更快速的製作較複雜的表格了。
##
經過分析,手繪表格最常使用到的狀況是:
- 把一格或鄰近的水平格由單列分割成兩列
- 把一格或鄰近的垂直格由單欄分割成兩欄
- 用橡皮筋擦按鈕把分隔線移除,使兩格變成一格
- 游標停在某個儲存格裡按Ctrl+H,則一格變成上、下兩格(水平分割)
- 游標停在某個儲存格裡按Ctrl+K,則一格變成左、右兩格(垂直分割)
- 標示需要合併的儲存格後按Ctrk+M,則數格變成一格
| CellSplitHorz 水平分割 |
| sub CellSplitHorz rem ---------------------------------------------------------------------- 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(2) as new com.sun.star.beans.PropertyValue args1(0).Name = "Amount" args1(0).Value = 2 args1(1).Name = "Horizontal" args1(1).Value = true args1(2).Name = "Proportional" args1(2).Value = true dispatcher.executeDispatch(document, ".uno:SplitCell", "", 0, args1()) end sub |
| CellSplitVertical 垂直分割 |
| REM ***** BASIC ***** sub CellSplitVertical rem ---------------------------------------------------------------------- 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(2) as new com.sun.star.beans.PropertyValue args1(0).Name = "Amount" args1(0).Value = 2 args1(1).Name = "Horizontal" args1(1).Value = false args1(2).Name = "Proportional" args1(2).Value = false dispatcher.executeDispatch(document, ".uno:SplitCell", "", 0, args1()) end sub |
| CellMerge 儲存格合併 |
| REM ***** BASIC ***** sub CellMerge rem ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- dispatcher.executeDispatch(document, ".uno:MergeCells", "", 0, Array()) end sub |
巨集製作完畢後,再用【工具→自訂→鍵盤】,在下方的【功能→範圍】裡找到OpenOffice.org巨集,將製作好的巨集變更給要使用的功能鍵。
雖然Writer目前並無手繪表格的功能,但透過功能鍵應該也能更快速的製作較複雜的表格了。
##
