MS Wordの描画キャンバスの使い勝手Hack その2

その3を書きました(2011.10.7))

描画キャンバスの使いにくい特徴の対策については昨日書いた通り。

でもって、そのマクロの機能を毎回「開発」のリボンから呼び出すのもかったるいので、そいつらはよく使うリボンに登録しちゃいましょ、の話し。

まず、Wordのオプションを開く。それから、、、

  1. リボンのユーザ設定を選択
  2. 「コマンドの選択」で「マクロ」を選択
  3. 「リボンのユーザ設定」で「ツールのタブ」を開いてから「描画ツール→書式→配置」を選択

Wordのオプション

  1. 新しいグループを作って
  2. マクロを追加して
  3. 名前を適宜変更する

マクロをボタンに

これでリボンにボタンを登録できた。
リボンに反映された

めでたしめでたし。
不要ならこれで開発リボンは非表示にしてもOKです。

MS Wordの描画キャンバスの使い勝手Hack(ってほどでもないけど・・・)

その2その3もあります(2011.10.7))

どっぷりIT系のお話。

技術系の話題に興味がない方はスルーで。
でもMicrosoft Word 2010を使っていて描画キャンバス関連で悩みがある人は読むともしかして解決するものがあるかも。。。
あくまでも「かも」。

同じ大学で教えていて縁のある高橋信夫先生のブログでWord 2010の仕様なのか不具合なのかわからないけど不都合がある特徴についての記事を読んだ。

恥ずかしながらこの特徴について問題意識はなく、今までじっくり考えたことがなかったので、これを機に検証したりしてみた。
結果、最も具合が悪くかつスマートな回避策がなさそうなのが
描画キャンバスの中では配置関連の機能が使えない
という点。

描画キャンバスと配置機能
描画キャンバスと配置機能

一旦気づいてしまうとどうしても気になってしまうもので、解決策を考えた。
マクロを登録しちゃいましょうって方向で。
まぁその時点で若干ハードルは高いけど以下の手順通りやれば問題ないはず。
あくまでも「はず」。

何かあっても責任は取れませんので、あくまでも自己責任でよろしくです。

まずは、マクロが使えるように「ファイル」メニューの「オプション」で「開発」というリボンを表示させる。

Wordのオプション
Wordのオプションで開発リボンを表示

表示されるようになった「開発」のリボンから「Visual Basic」を開く。
で、「Normal」を右クリックして標準モジュールを追加する。

標準モジュールの追加
標準モジュールの追加

このNormalってのは、Wordで文書を新規作成するときに読み込まれる設定テンプレートのようなもの。
つまりNormalにマクロを追加してあげれば今後新規作成する文書もすべてこのマクロが使えるようになる。
でもってこのマクロは編集して保存するWordファイル自体には組み込まれないので変なセキュリティ云々の心配もなし。
作成した文書も安心して配布可能☆

で、標準モジュールの中にできた「Module1」に以下のコードをコピペ。

Private Sub AlignHorizontal(ARate As Single)
Dim Min, Max, i As Integer
    Min = 32768
    Max = -32768
    For Each AShape In Selection.ChildShapeRange
        If Min > AShape.Left Then
            Min = AShape.Left
        End If
        i = AShape.Left + AShape.Width / 20
        If Max < i Then
            Max = i
        End If
    Next AShape
    For Each AShape In Selection.ChildShapeRange
        AShape.Left = Min * (1 - ARate) + Max * ARate - AShape.Width / 20 * ARate
    Next AShape
End Sub

Private Sub AlignVertical(ARate As Single)
Dim Min, Max, i As Integer
    Min = 32768
    Max = -32768
    For Each AShape In Selection.ChildShapeRange
        If Min > AShape.Top Then
            Min = AShape.Top
        End If
        i = AShape.Top + AShape.Height / 20
        If Max < i Then
            Max = i
        End If
    Next AShape
    For Each AShape In Selection.ChildShapeRange
        AShape.Top = Min * (1 - ARate) + Max * ARate - AShape.Height / 20 * ARate
    Next AShape
End Sub

Private Sub AlignShape(AHorizontal As Boolean, ARate As Single)
    If Selection.ChildShapeRange.Count = 0 Then
        Exit Sub
    End If
    If AHorizontal Then
        AlignHorizontal (ARate)
    Else
        AlignVertical (ARate)
    End If
End Sub

Sub AlignHorizontalLeft()
    AlignShape True, 0
End Sub

Sub AlignHorizontalCenter()
    AlignShape True, 0.5
End Sub

Sub AlignHorizontalRight()
    AlignShape True, 1
End Sub

Sub AlignVerticalTop()
    AlignShape False, 0
End Sub

Sub AlignVerticalMiddle()
    AlignShape False, 0.5
End Sub

Sub AlignVerticalBottom()
    AlignShape False, 1
End Sub

で、Visual Basicの窓は保存したら閉じてOK。

もうこれで使えるようになった。
描画キャンバスの中身のうち配置を調整したいもの(図形でもクリップアートでも)を複数選んでから「開発」リボンにある「マクロ」ボタンをクリック。
6つのAlign関連のマクロが登録されているはずなので、それを使用。
あとはマクロの名前から動作は察してください。

(2011年8月4日追記:いちいちマクロを呼び出すのは面倒なのでこれらをリボンに登録する話を書きました

描画キャンバス外の要素には効果がないようですが、描画キャンバス外ならそもそも正規の配置機能が使えるのでそちらを。
ほぼテストコードなので「利用は各自の責任で」というお約束の記述も一応。
このコード程度の規模で著作権どうこうなんて言うつもりもないので利用・改変はご自由に♪
転載するときなどはこの元記事にリンクとかあると嬉しいな、くらいの感じです。

「そのコードじゃ美しくないぜ」などご意見等はコメント欄まで。
「動きません・・・」系の質問などもコメント欄にどうぞ、ではありますが、サポートしきれない可能性が高いので予めご了承を。

伊東に消えた恋

この週末は伊豆稲取の潮風よさこいというイベントに。

もともと実家が横浜の南の外れだから、伊豆方面はよく車で行ってた。
だから今回乗ったJR東日本と伊豆急行の直通列車「踊り子」は実は初体験。
テンション上がりつつ品川から乗車。
見慣れた横浜を、大船を過ぎ、それでもまだ土地勘のある小田原を過ぎたあたりから小旅行気分☆
そして伊東にさしかかる辺りで昔の記憶が。。。

まだねずみやが高校生の頃、男3人で企画した自転車ツアー。
宿の予約も何もなしで伊東までチャリの旅。
100キロ弱の道を行きは1日で、帰りは2日かけて帰ってくるちょっとした冒険旅行。

往路は伊東の手前「ヨイ風呂~」のCMが懐かしいサンハトヤのあたり、しばらく線路と道路が平行して走ってる。
そこを僕らが並んで走ってるところに後ろから電車がやってきてゆっくり追い抜いていった。
ノリで3人して手を振ってみたら、なんと、学生服着たかわいい女の子が電車の中から手を振り返してくるではないの!
平行して走ってるとはいえホントは顔の造作まではわからない。
でもだがしかし!誰がなんと言おうとその子はかわいかったに決まってるのであります。
急に「あります」とかかしこまってしまったけどそうに決まっているのであります。
年頃の男3人は「もしかしたら彼女は伊東で降りるかも」と鼻息荒く伊東まで猛ダッシュ。
手を振られただけで恋に落ちたアホ3人組。
当然誰かが待っているはずもなく、青春の苦さをかみしめたのでした。
あー、苦い。。。

潮風よさこいのイベント自体は、あいにくの雨で予定変更等もあったものの、なんとか決行。
ロケーションも進行の雰囲気もよく素敵なお祭りでした☆

さて、来週は宮城県登米市の豊里です♪

戻らない

沖縄出張から帰ってきて約1週間。

滞在中に直撃するって予報だった台風6号は見事沖縄本島をそれ、東京に戻った月曜時点で四国方面へ。
その後関東を直撃するって予報だったものの南下で東京もそれて。
晴れ男っぷりを発揮し「ねずみやvsマーゴン」はねずみやの勝利☆

ちなみに、「マーゴン」のような台風の命名については国立情報学研究所の北本先生の記事に詳しく書いてあって読んでて面白かったっす。

メインの目的だった琉球の祭典(http://ryusai.jp/)の打ち合わせも実のあるものになったし、これからが楽しみ♪
このブログでも情報解禁になり次第、こぼれ話などができたらと。

しかしまぁ沖縄では食べた食べた。
戻ってきた当初は2キロくらいの体重増加。
いまだに1キロゲインくらいを推移。
お腹周りが張ってる感じで体重が戻らない。。。

良い方向に

主にtwitter上で娘の名前を考えてくださったみなさま、ありがとうございました☆
「ミッキー」だ「ミニー」だ「うさぎ」だ「ねこ」だと、まぁ出るわ出るわ・・・。
「ジェリー」ってのもあったし「俺の名前から1文字とってもいいぞ」なんてご丁寧な許諾までもらって。。。
ホントにろくでもないすばらしい仲間を持ったものだと、感慨しきりでございますよ。

最終的に名前は「実怜」と書いて「みさと」にしました。
名字も名前も読みにくくてすみません。>将来担任になってくれるの学校の先生など関係者のみなさま

それから名前の提案以外にもたくさんのメッセージをいただきました。
ありがとうございました♪

それらの中で、音楽関係の印象に残ったコメントを二つほどご紹介。

  • 楽曲の作風は変わるのか?

確かにこれは自分でも気になる。
ただ、生まれてもう2週間ほど経つけど、作風が劇的に変わるような予感はない。
たぶん今までの延長線上で曲書きやアレンジをすることができるんじゃないかなーという気が。

  • 「生活の中に子育てが加わることで、仕事のペースが速くなりますよ。」

これは音楽の大先輩にもらったコメント。
今まで生活のサイクルになかったものが入ってくるわけだから、たしかに既存のものをちょっとずつ圧縮しないといけなくなるだろう。
これまで以上に密度の濃い時間を過ごさなきゃいけない。
当然仕事のクオリティが下がるのはありえないわけで、むしろ今まで以上のものを集中して作ることになる。

前回も書いたけど、「公私同根」だから、プライベートの変化を機に仕事の面でも今までと変わりなくそしてそれ以上のパフォーマンスを発揮していく所存。
これから自分がどのように変わっていくのか、変わっていけるのか、楽しみつつ良い方向に持って行きたいなと☆