出席番号の変わり目で改ページ
マージした表で明らかにおかしいところを直して,出席番号順にソートして印刷…したいのだけど,改ページを入れまくらなければいけない。Excelだったらわかるんだけど,LibreOffice Calcだとどうしていいのかわからない。あちこち検索して,改ページがあるかどうかが調べられることはわかったけど,それを設定する方法がわからない。結局Option VBASupport 1を指定してExcelと同じ書き方をすることでなんとかなった。なんとなく負けた気持ち。
(追記)「IsStartOfNewPageプロパティでいける」とのコメントをいただいた。確かにプロパティだから,値をセットしてもいいんだよな。そんなわけでこんなコードでうまくいった。Col=3は,キーになる列がD列だからということ。
Sub Main
Col= 3
Doc =ThisComponent
Sheet = Doc.Sheets(0)
pre = Sheet.GetCellByPosition(Col, 1).Value
r = 2
Do
Row = Sheet.Rows(r)
Cell = Sheet.GetCellByPosition(Col,r)
if Cell.Value <> pre then
pre = Cell.Value
Row.IsStartOfNewPage = True
Else
Row.IsStartOfNewPage = False
End if
r = r + 1
Loop While pre<>0
End Sub
参考まで wrote at 2019-01-23 21:46:
わたやん wrote at 2019-01-23 22:16:
コメントの受付は終了しました。