2017年5月14日日曜日

Excelで作成したグラフをリッチテキストへ貼りつける

Excel を使いグラフを作成して Notes のリッチテキストへ貼りつけるエージェントを作ってみた。

Excel データは次のような単純なもので、保存されているファイルを使う。
リッチテキストへ貼りつけるグラフは、次のような折れ線。タイトルを追加する

グラフのサイズを指定したいので、既存のシートに埋め込みグラフを追加する。
※新規にグラフシートを追加する場合、サイズの指定がよくわからない(常に最大?)

クリップボードへコピーした埋め込みグラフを新規文書のリッチテキストエリアへ貼りつける。

"Main" フォームには "Body"という名前のリッチテキストフィールドがある。

コードは以下のとおり。
Set xlApp = CreateObject("Excel.Application")
Set xlbook = xlApp.Workbooks.Open( "D:\kakaku.xlsx" ) 'Excelファイルを開く
Set xlsheet = xlbook.Worksheets(1)
xlApp.Visible = False 'Excelを非表示にする

'グラフを追加
Set xlchart = xlsheet.ChartObjects().Add( 10, 20, 500, 300 ) '追加する位置(左, 上, 幅, 高さ)
With xlchart.chart '追加したグラフ
 .SetSourceData xlsheet.UsedRange '範囲はシート内の全て
 .HasTitle = True 'タイトルを追加
 .ChartTitle.Text = "レギュラーガソリン価格"
 .ChartType = 4 'xlLine (折れ線)
 .ChartArea.Copy 'クリップボードへコピー
End With

'新規文書をUIで開き本文へ貼り付け
Set uidoc = ws.Composedocument("", "", "Main",,, True) '新規文書をMainフォームで開く
With uidoc
 .Gotofield "Body" 'Bodyフィールドへ移動
 .Paste 'グラフを貼り付け
 .Save '保存
 .Close True 'フォームを閉じる
End With

'Excelを終了
xlApp.DisplayAlerts = False
xlApp.quit
確認した環境:Notes 9.0.1 + Windows 10 + Excel 2016

2017年3月8日水曜日

Connections "Pink" ってなんだろう

サンフランシスコで開催された Connect 2017 で発表された "Pink" って何だろうと思っていたら、日本時間の今朝(というか昨日の深夜)に開催された Open Mic Webcast で "Pink" がテーマだったようで、早速公開されたプレゼンテーションを見てみました。

資料はこちらからダウンロードできます。

Open Mic Webcast: Think Pink - The Future of IBM Connections - 07 March 2017 [presentation attached]


これを読む前は

"Pink" って Connections の次期バージョンのコードネームなの?

と思っていたのですが、どうやら特定のバージョンを指した名称ではないようで、この先の展望というかロードマップ的なものを指して "Pink" と呼んでいる、という印象を持ちました。

結局のところよくわかりません。

とまあ、"Pink" についてはこれ以上深読みせずに、今後 Connections がどう変わっていくのかを見てみました。

まず非常に興味深かったのは、これまでの WebSphere + DBMS 等で構成していた Connections ですが、"Pink" では node.js や MongoDB といったオープン技術を採用し、なおかつ既存のコードをあらたに書き起こしたコードで完全に置き換えるらしいこと。

めっちゃ大胆ですね。

我々が利用している Connections Cloud もそのうち Pink に染まっていくのでしょうけど、データの移行作業も発生するだろうからシステムが長時間止まらないか、パフォーマンスは悪くならないか、オープン技術ってセキュリティホールの情報もオープンじゃないの?大丈夫??などと心配になってしまいます。

システム構成は大きく変わりそうですが、エンドユーザーの見た目や使い勝手も大きく変わりそうです。

今回の資料で個人的に気になったのは、

  • IBM Verse の「Important to Me」が Connections にも現れ、人の他にコミュニティーが追加できる
  • ファイル「同期」が拡張され、同期の対象にフォルダーが加わる
  • コミュニティー・デザインの拡張
  • そのデザインを新たなコミュニティーにコピーできる

の3点です。改善を要望していたものや、こうなればいいなと感じていた部分が実装されそうなのです。

Conncetions の「Important to Me」って「フォロー」とどう違うのでしょうか...やはりよくわかりません。

ところで、クラウド・サービスを使っていて思うことは、リリースされた新機能を使い始めるタイミングが皆同じため、エンドユーザーからの質問に管理者もサポートメンバーも回答できずに時間がかかったり、エンドユーザー向けのマニュアルをあらかじめ作ることができないことが辛いのです。

その点「ガイドツアー」には期待していて、くまなく新機能についてもガイドしてくれると助かるなあと。

それから "Pink" については今回の資料や Connect2017 に参加された IBM Champion やベンダー企業から発信される情報だけしか私はまだ見ることができていませんが、来週(2017年3月17日)開催のテクてく Lotus 技術者夜会では "Pink" のお話(特に開発者向けの内容)も聞けるようです。

動くデモが早く見たいですね。