Feed on
Posts
Comments

ということでLTの方をしました。スライドとアプリケーションの方を公開します
どう考えても最初のプレゼンがレベル高すぎて…

初めて外でしゃべったけどやっぱりぐだぐだになっちゃうなぁ… もっとしっかりしたい
でも今度また機会があるなら10分くらいお時間もらえたらなぁなどなど

もっとしゃべれるようにしたいですねー

今回は@Grabacr07さんと@okazukiさん、また主催の@jz5さんのおかげであそこに立てたので本当に感謝してます。ありがとうございました

スライドはSkydriveに置いときますので適当にどうぞ
スライドはダウンロードしないのであればIEで見ることを推奨します。他のブラウザだと結構重いです


見れない方はhttps://skydrive.live.com/redir?resid=D1E5D51DEA8A009F!1522からどうぞ

スライドで扱ったImageSettingsAddinについてはhttp://artfulplace.net/files/ImageSettingsAddin.zipからダウンロードできます。ぜひ使ってあげると喜びます
必要環境はOffice 2010以降と.NET Framework 4.0以上です
追記(2015/2/19):新しくしました こっちの記事からダウンロードできますのでできればどうぞ

インストール方法は.vstoファイルを実行してください。ウィザードに従えばインストールできるはずです

インストールするとページレイアウトのページ設定の隣のグループに”背景の自動設定”が追加されるかなと思いますのでそこで画像を指定してください。バグがないとも言い切れませんが基本的には大丈夫です
ああちなみにこれをインストールするとExcelの背景を自分で設定したりするとこのアドインが確実に変な動作起こすので注意が必要です(画像自動設定を切れば問題はないです)
その辺はGrabacr07先生が言ってたドキュメントプロパティをブック単位で構成すればいいんですけどまあそこまでやる暇がなかった…

以下技術情報

・画像を背景に設定するには
Worksheet.SetBackgroundPicture(string filename)を使います。ここにパスの文字列を突っ込むと動作します

ちなみに画像を消すときはvbNullStringを追加します …ここは普通にNullでもいいのかなぁ… 知らないんですよね

・アプリケーションレベルのイベントハンドリング
今回はApplicationにある4つのイベントで主に操作してます。WorkbookOpen,WorkbookBeforeSave,WorkbookAfterSave,WorkbookBeforeCloseの4つです

Workbookを開いたら画像を追加して閉じる前に画像は削除されます。また保存する前にも一瞬削除して保存したらまた画像を追加する ということをしています。ただ印刷はわかりません。もしかしたら映るかも

・保存状態の調整
ところで背景画像を設定してしまうとExcel側で変更されたという風に検知されて閉じる前にアラートが出ます。非常に今回の目的には邪魔ですね(というのも保存した後閉じようとすると確実に聞かれるため)

というわけでWorkbook.Savedをいじります。画像を追加したときにはWorkbook.Savedを変更してExcel側にこのブックは保存済みの状態という風に通知します。ここでブックを閉じるときにいじってある場合にはそのまま画像を削除して処理させていじってなければ通知を出さずにブックを閉じさせることができます


こんな感じです
ドキュメントプロパティ周りでv1.1出すかもしれないですねぇ

こんな感じで

3 Responses to “プロ生でLTしました”

  1. […] Excel アドイン「ImageSettingsAddin」。プロ生でLTしました « 空談録 […]