となりのセルを選択
アクティブセルの1つ上下左右のセルを選択するマクロを作成しました。
Sub GoUp ma0050_UnoSe("GoUp") End Sub Sub GoDown ma0050_UnoSe("GoDown") End Sub Sub GoLeft ma0050_UnoSe("GoLeft") End Sub Sub GoRight ma0050_UnoSe("GoRight") End Sub sub ma0050_UnoSe(maunostr as String) rem ---------------------------------------------------------------------- rem define variables dim document as object dim dispatcher as object Dim maCurrentC as Object Dim maCurrentS as Object rem ---------------------------------------------------------------------- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") maCurrentC = ThisComponent.CurrentController rem ---------------------------------------------------------------------- dim args1(1) as new com.sun.star.beans.PropertyValue args1(0).Name = "By" args1(0).Value = 1 args1(1).Name = "Sel" args1(1).Value = false dispatcher.executeDispatch(document,".uno:" & maunostr, "", 0, args1()) maCurrentS = ThisComponent.CurrentSelection maCurrentC.Select(maCurrentS) end sub |
マクロの機能
GoUp :アクティブセルの1つ上のセルを選択します。
GoDown :アクティブセルの1つ下のセルを選択します。
GoLeft :アクティブセルの1つ左のセルを選択します。
GoRight:アクティブセルの1つ右のセルを選択します。
マクロの説明
上矢印、下矢印、左矢印、右矢印のマクロ記録を編集して作成しました。
UNO コマンド名については、StarSuite 8 管理ガイド(P67)
を参考にして下さい。
Excelでは、下記のようになります。
Sub XGoUp()
If ActiveCell.Row > 1 Then
ActiveCell.Cells(0, 1).Select
End If
End Sub
Sub XGoDown()
If ActiveCell.Row < Cells(Rows.Count, 1).Row Then
ActiveCell.Cells(2, 1).Select
End If
End Sub
Sub XGoLeft()
If ActiveCell.Column > 1 Then
ActiveCell.Cells(1, 0).Select
End If
End Sub
Sub XGoRight()
If ActiveCell.Column < Cells(1, Columns.Count).Column Then
ActiveCell.Cells(1, 2).Select
End If
End Sub
サンプルマクロ(Calc)
「ファイルのダウンロード」について 一旦ファイルを保存して
「ma0050_unose.zip」を「ma0050_unose.sxc」に変更後、実行して下さい。
2006年11月03日(金) 10:55:30 Modified by zizidai_3373