不定期戯言

戻る

« | 2019 | Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec | »

古いページ 新しいページ

2019.01.23 (Wed)

出席番号の変わり目で改ページ

・マージした表で明らかにおかしいところを直して,出席番号順にソートして印刷…したいのだけど,改ページを入れまくらなければいけない。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

コメント(2)

参考まで wrote at 2019-01-23 21:46:

LibreOffice Basicならば
LibreOffice macro IsStartOfNewPage
で検索

わたやん wrote at 2019-01-23 22:16:

あ,そうか。あれはプロパティだからbooleanな値をセットしてやればいいんですね。検証して追記します。ありがとうございます。

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2019.01.19 (Sat)

表の結合

・生徒のLT大会が終わったので,評価シートをマージしなくてはいけない。LibreOffice calcの表をそのまま全員分貼り合わせればいいのだが,こんなの手作業でやりたくない。最近Pythonを勉強中なので,それを使ってざくっとコードを書いてみた。odfpyモジュールを使ってみたが,肝心の表読み出しのところが少し面倒だった。

import pathlib
from odf import number,text,table,opendocument

doc = opendocument.OpenDocumentSpreadsheet()
tbl = table.Table(name="評価シート")

p = pathlib.Path(".")

for f in p.glob("2018*.ods"):
    d = opendocument.load(str(f))
    tables = d.spreadsheet.getElementsByType(table.Table)
    for t in tables:
        for r in t.getElementsByType(table.TableRow):
            row = table.TableRow()
            tbl.addElement(row)
            for c in r.getElementsByType(table.TableCell):
                cells = 1
                repeat = c.getAttribute("numbercolumnsrepeated")
                vt = c.getAttribute("valuetype")
                if repeat:
                    cells = int(repeat)
                while cells > 0:
                    cell = table.TableCell(value=c, valuetype=vt)
                    cell.addElement(text.P(text=c))
                    row.addElement(cell)
                    cells -= 1

doc.spreadsheet.addElement(tbl)
doc.save("merge",True)

(こっそり修正)

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.12.02 (Sun)

X280始動

・29日にX280が届いたので,早速セットアップ。このタイプのキーボードは初めてなので気分的には抵抗があったが,使ってみるとなんとかなりそう。ディスプレイが同じサイズながら1368x768から1920x1080になったので,広く感じる。もちろん文字は小さくなっているのだが,これはそういうものだと思ってしまえば困るほどのものではない(いくつかのアプリケーションでは文字サイズを大きくしているが)。しかしマウスカーソルの移動では画面の広さを実感する。右上隅のバツボタンが遠いので,タッチパネルをときどき使っている。

・背面のThinkPadの文字が上下反転してないし,iの点が光るようになっているのもかっこいい。さて,これもシールでべたべたにするかな。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.11.19 (Mon)

X280注文その後

・昨日のうちにクレジットカードの会社から電話があったらしいので折り返す。急に大きい金額が来たので,乗っ取りがあったかもしれないという確認のために一時的に止めたとのこと。確かにこのカードではamazonの引き落としが主だから,大きい金額になることはあまり無い(この夏の移動で飛行機の支払いをしたのが最近では一番大きかったかな)。そういう意味では安全側に振ってくれたということなのだろう。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.11.18 (Sun)

X280注文

・思うところあって,ノートパソコンを買い換えようと思う。そんなわけでX280を注文…したのだが,メモリ16GBで英語キーボードというと選択が難しい…タッチ対応のでないと見つけられなかった。

・夕方になって,クレジット会社に拒否られたという連絡があったので,仕方なく銀行振込に切り替える。何があったんだろう…。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.11.02 (Fri)

フィンガープレゼンター

・ずっとコクヨの黒曜石を愛用してきたが,指が太い私にはなかなかつらい。2台めも指の輪っかを折ってしまった。そんなわけで,新しくInatechのフィンガープレゼンターを買ってみた。ちょうど私の指に合うサイズで安心した…ということは,多くの人にとっては太すぎるのかも知れない。長押しの割当が黒曜石と違うので若干戸惑ったけど,これくらいならすぐに慣れるだろう。いい買い物をした。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.10.01 (Mon)

pull request

・WaPENはGitHubで公開しているのだが,初めてPull Requestをいただいた。しかもそれはずっと実装しなくてはいけないと思っていた関数定義とかそういったところ。当人も一定のバグには気がついているとはいうことだが,ちょっと実行してみるとたしかに動くのでおもしろい。さて,問題はこれをどうやって検証してマージするかだ。しばらく試行錯誤して,ようやくブランチを手元に持ってくることができた。自分で実装しようとしていたのとは少しイメージが違うようだが,それは表現の違いにとどまるような気がする。

・まあ開発をどう進めるかはともかくとして,こういう反応をいただけたことが,ただ嬉しい。よくあんな行きあたりばったりなコードを読んでくれたものだとか。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.09.19 (Wed)

サーバ移転

・aichi-edu.info として使ってきたSC430が通電しなくなった。いつか壊れるとは思っていて移転しなくちゃいけないとは思っていたのだけど,なかなか踏み切れずにいて,こういう事態になってしまった。そんなわけでレンタルサーバにコンテンツやMLを移行することにする。ドメインをムームーからさくらに移動する手続きを行った。営業日で何日かかかると思っていたら,案外早く処理していただけた。遅くなったのはDNSの浸透待ち私がWHOISを書き換えるのを忘れていたせい。

・あとはNetCommonsのそれとかMLのリストを移して完了。MLがfmlということでいろいろ忘れてしまっているのだけど,なんとか作業完了。

・さて,SC430は直すか直さないか…直したら実験用とかいろいろ使えるとは思うのだけど,いまいち状況がわからないんだよなあ。電源ボタンがオレンジで点灯しているので,その場合は本体が帯電しているとかいろいろな原因が考えられるらしいんだけど,どうも当てはまらないっぽい。ただ捨てるのはもったいない気がする…。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.09.02 (Sun)

もくもく会

・某勉強会から派生したもくもく会。「ゼロから作るDeep Learning」を読んでいる。確かにパラメータを微小にずらして値の変化を見るよりも,やってる計算はわかってるんだからその計算グラフを作って逆にたどっていった方が計算が速いのはわかる。でもそうなると理屈が難しくなるなあ…。人に説明できる気がしない。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.08.05 (Sun)

beamerposterのテーマを作る

・今年は全高情研とSSSでポスター発表をする。昨年度末の神奈川県授業実践報告会ではbeamereposterを使ってポスターを作った。今回もその路線で行きたいのだが,カラーにすると値段が倍になるので,白黒にしたい。それでいいテーマがないか探そうかと思ったのだが,悠長に探しているとそれが目的化してしまいかねない。自分で作る方向で何とかしようと考えた。ググった結果,宮澤彬氏のブログ記事が参考になりそう…というか,そこにあるテーマを簡略化して白黒のテーマを作った。全高情研の分はもう印刷に回したので,これからSSSの分を作ろう。

・この記事とか参考にbeamerのテーマも作ろうかな。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

古いページ 新しいページ