2017年01月22日

Microsoft MVP for Visio再受賞

今年もvisGeekはVisio部門でMicrosoft MVPを受賞することができました。
https://mvp.microsoft.com/ja-jp/

これからも皆様のお役に立てるよう、様々な情報を提供して参ります。
posted by visGeek at 22:30| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2016年11月08日

Sampo Software Visio で 3D モデリング?! Sampo Software 3D Visioner

Visio で簡単に 3D モデルを作れるアドオンです。
すばらしいソフトウェアですね。



Sampo Software
3D Visioner
https://samposoftware.com/products/3d-visioner/
posted by visGeek at 21:51| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2016年06月30日

Microsoft の Visio ブログが復活

Microsoft の Visio チームによる blog が復活しました。
https://blogs.msdn.microsoft.com/visio/2016/06/28/visio-insights-is-back/

今後の更新が楽しみですね。
posted by visGeek at 03:11| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2016年06月15日

Visio アドインの自作フォームを Visio ウィンドウをオーナーとして表示する

アドインでフォームを表示する時に Visio のウィンドウをオーナーとして表示してみましょう。
オーナーを指定してフォームを表示すると、常にオーナーより手前に表示されるようになります。

※Visual Studio によるアドインの作り方は以下を参照してください。
http://visio.seesaa.net/article/437290221.html


  1. Visio ウィンドウのハンドルを取得することのできるクラスを作成します。

    internal class Win32Window : System.Windows.Forms.IWin32Window
    {
    public Win32Window(int windowHandle)
    {
    this.Handle = new IntPtr(windowHandle);
    }

    public IntPtr Handle { getprivate set; }
    }



  2. リボンにフォーム表示ボタンを用意します。
    20160615_01.png


  3. ボタンのイベントハンドラーにフォーム表示のコードを記述します。

    private void showButton_Click(object sender, RibbonControlEventArgs e)
    {
    // Visio ウィンドウ
    int windowHandle = Globals.ThisAddIn.Application.WindowHandle32;
    var window = new Win32Window(windowHandle);

    // Visio ウィンドウをオーナーとしてフォームを表示する。
    var form = new MyForm();
    form.Show(window);
    }

    private void showDialogButton_Click(object sender, RibbonControlEventArgs e)
    {
    // Visio ウィンドウ
    int windowHandle = Globals.ThisAddIn.Application.WindowHandle32;
    var window = new Win32Window(windowHandle);

    // Visio ウィンドウをオーナーとしてフォームを表示する。
    var form = new MyForm();
    form.ShowDialog(window);
    }




    1. それでは実行してみましょう。
      20160615_02.png

      [Show] ボタンをクリックするとモーダル、[ShowDialog]ボタンをクリックするとモードレスでフォームが表示されます。
      表示されたフォームは常に Visio のウィンドウの手前に表示されるのでアドインらしくなりましたね。

      ソースコードは以下で公開しています。
      https://github.com/visGeek/VisioAddIn_ShowFormSample
posted by visGeek at 04:25| Comment(0) | TrackBack(0) | アドイン開発 | このブログの読者になる | 更新情報をチェックする

2016年05月06日

Visio で動くラインアート

無償の開発ツールを使って Microsoft Office 製品のアドイン開発することができます。
もちろん Visio のアドインも開発できます。
http://visio.seesaa.net/article/437290221.html

Visio の図面の上で動くラインアートを作ってみました。


こちらは Excel のセル内で動くラインアートです。


ソースコードはこちらにあります。
https://github.com/visGeek/OfficeLineArt

posted by visGeek at 03:34| Comment(0) | TrackBack(0) | アドイン開発 | このブログの読者になる | 更新情報をチェックする

2016年04月28日

Visual Studio で Visio アドインを作る

Visual Studio で Visio アドインを開発してみましょう。
同じ方法で Excel などの他の Office 製品のアドインも開発できます。

■Visual Studio をインストールします。
個人の場合は Visual Studio Community を利用できます。
ライセンス条項をよく確認してください。

Visual Studio Community
https://www.visualstudio.com/ja-jp/products/visual-studio-community-vs.aspx

MICROSOFT VISUAL STUDIO COMMUNITY 2015
マイクロソフト ソフトウェア ライセンス条項
https://www.visualstudio.com/support/legal/mt171547

■続いて Office Developer Tools (VSTO) をインストールします。
Visual Studio の Enterprise エディションではこの作業は必要ありません。
https://www.visualstudio.com/ja-jp/features/office-tools-vs.aspx

■Visual Studio を起動して、新しいプロジェクトを作成します。
新しいプロジェクト作成で Visio のアドインを選択します。
20160428_01.gif

■リボンを作成します。
ソリューションエクスプローラーのプロジェクトアイコンを右クリック
→ [追加(D)] → [新しい項目(W)]
20160428_02.gif

リボンを追加します。
20160428_07.gif

■リボンにボタンを追加します。
リボンのビジュアルデザイナーを表示します。
20160428_03.gif

ツールボックスから[Button]をドラッグ&ドロップドロップします。
ボタンが作成されたらこれをダブルクリックします。
これでイベントハンドラーが作成されます。
20160428_04.gif

■イベントハンドラーにコードを記述します。
イベントハンドラーに、図面の名称を表示するコードを記述します。
続いて Visual Studio の[実行]ボタンをクリックします。これで Visio が起動されます。
20160428_05.gif

■リボンからプログラムを実行します。
新規の図面を開いたあとに作成したリボンを表示してボタンをクリックします。
20160428_06.gif
posted by visGeek at 05:58| Comment(0) | TrackBack(0) | アドイン開発 | このブログの読者になる | 更新情報をチェックする

2016年03月09日

Visio Viewer for Mobile - スマホで Visio

Visio Viewer for Mobileをご存じですか?
https://nektony.com/mobile-visio-viewer

AndroidやiPhoneでVisioのファイルを開けるビューアです。
テーマ・単位の扱い・WMFやOLEの表示にも対応しています。

レイヤ表示や図形データにも対応しているので、
PDF化して表示するのでは実現できないこともVisio Viewer for Mobileなら実現可能です。

--

Do you know Visio Viewer for Mobile?
https://nektony.com/mobile-visio-viewer

It's a viewer for Visio file which runs on your Android/iPhone.
It can handle themes, units and WMF/OLE.

Visio Viewer for Mobile can show layers and Shape Data
so you can do many things with it which you can't by converting VSD to PDF.
posted by visGeek at 04:32| Comment(0) | TrackBack(0) | お知らせ | このブログの読者になる | 更新情報をチェックする

2016年03月03日

Visio 2016 SDK リリース

Microsoft から Visio 2016 SDK がリリースされました。
以下のサイトからダウンロードできます。
https://www.microsoft.com/en-us/download/details.aspx?id=51221
posted by visGeek at 13:59| Comment(0) | TrackBack(0) | お知らせ | このブログの読者になる | 更新情報をチェックする

2015年11月08日

Excel で Visio 図形を使う

表計算ソフト Micorosoft Excel では、Visio と同じように図形を使うことができます。
でも、予め用意されている図形を貼り付けることができるだけで自由な図形を作ることはできません。

どうしても Excel で自由な図形を使いたいときは Visio で作った図形を使いましょう。

1. Visio で作図してそれをクリップボードにコピーします。
20151108_1.png

2. Excel に貼り付けます。枠線と背景色が付いている場合があるので必要ない場合は書式設定で消しましょう。
20151108_2.png
posted by visGeek at 14:08| Comment(0) | TrackBack(0) | Visioのツボ | このブログの読者になる | 更新情報をチェックする

2015年10月11日

Visio 2016 と以前の Visio の比較

Visio 2016 と以前の Visio の比較が公開されています。
https://products.office.com/ja-jp/visio/microsoft-visio-2013-visio-version-comparison

Visio 2016 は色々な機能が強化されたり、新しい機能が追加されているようですね。
posted by visGeek at 05:47| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2015年10月04日

Visio 2016 リリース

Visio 2016 がリリースされました。
いかのサイトから試用版を利用することができます。
https://products.office.com/ja-jp/Visio/flowchart-software
posted by visGeek at 05:45| Comment(0) | TrackBack(0) | お知らせ | このブログの読者になる | 更新情報をチェックする

2015年09月20日

Visio のウィンドウのハンドル

Visio のウィンドウを親としてダイアログボックスを表示したり、それをモーダルウィンドウにするにはどうしたらいいでしょうか。

visio オブジェクトには WindowHandle32 という int 型のプロパティがあります。
int 型なのでこれを適宜変換して使います。

たとえば IntPtr 型に変換する場合は以下のようにします。

var windowHandle = new IntPtr(visio.WindowHandle32);

posted by visGeek at 01:39| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2015年09月06日

Visio のコレクションクラス

プログラミングしていると、配列やコレクションからインデックス番号を指定して要素を取得する場面が沢山あります。VBA と C# では最初の要素を表すインデックス番号が違います。

[VBA]

Dim Numbers(3) As Integer
Dim Number As Integer
Number = Numbers(1) ' 最初の要素は 1


[C#]

int[] numbers = new int[3];
int number = numbers[0]; // 最初の要素は 0


Visio のオブジェクトにも Documents や Pages などいろいろなコレクションクラスがあります。Visio のコレクションクラスは VBA であっても C# であっても最初の要素のインデックス番号は 1 です。C# で開発する場合は注意しましょう。
[VBA]

Dim Page As Page
Set Page = Pages.item(1)


[C#]

Page page;
page = pages[1];

posted by visGeek at 21:44| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2015年08月30日

Visio プログラミングのやり方がわからないときのヒント

ドキュメントに四角形を配置したいけどどうしたらわからない、そんなときにはどうしたらいいでしょうか。

そんなときには操作を記録してマクロを作ってみるといいでしょう。

まず以下の方法で Visio を開発モードにします。
リボンの「ファイル」タブ →「オプション」→「詳細設定」→「開発モードで実行する」をチェック。
これでリボンに「開発」というタブが表示されます。

次に操作を記録します。
「開発」タブ →「マクロの記録」
→ 「マクロの記録」ダイアログボックスで任意のマクロ名を指定
→ マクロの保存先を指定(「作業中の図面」でいいでしょう。)
→ 「OK」ボタン

記録が始まりました。この状態で以下のように操作します。
図面に四角形を配置する。 → リボンの「開発」の「記録終了」をクリック。

これで操作を記録することができたのでリボン「開発」タブの「Visal Basic」をクリックして内容を確認してみましょう。
2015_04_01.png


Application.ActiveWindow.Page.DrawRectangle 0.708661, 11.023622, 2.362205, 10.23622

この部分が四角形を配置している部分です。
現在表示されているページに四角形を配置するという内容になってますね。
あとは作成したい機能に合わせて数値などを変更します。

このテクニックは VBA による開発でも Visual Studio による開発でも使えるテクニックです。
posted by visGeek at 16:31| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2015年08月16日

VBA の暗黙オブジェクトを Visual Studio で使う方法

VBA では Application や ActiveWindow など暗黙的に用意されているオブジェクトへの参照がいくつかあります。

Visual Studio で開発する場合は以下のようにします。
2015_03_02.png

リボンに用意されている Globals.ThisAddIn.Application を使って ActiveWindow や ActivePage などにアクセスします。少し記述量が増えるかも知れませんが慣れておきましょう。

ソースコード
VisioAddIn1.zip
posted by visGeek at 15:41| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2015年08月02日

自作のリボンに機能を割り当てる

自作のリボンに置いたボタンに機能を割り当ててみましょう。

2015_03_01.png

リボンに置いたボタンをダブルクリックすると、イベントハンドラーとして割り当てられたメソッドが作成されます。これに四角形を配置するプログラムを記述します。
2015_03_03.png

プロジェクトを実行してリボンのボタンをクリックすると四角形が配置されます。
2015_03_02.png
posted by visGeek at 05:28| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2015年07月19日

拡張機能用のリボンを作る

Visio は色々な機能をリボンから呼び出すことができます。
拡張機能でも同じように独自のリボンを用意してそこから機能を実行することができます。
それでは独自のリボンを作ってみましょう。

プロジェクトを右クリックしてメニューから新しい項目を追加します。
2015_02_01.png

リボンを選択します。
これでリボンが作成されます。
2015_02_04.png

デザイナーを使ってリボンにボタンなどのコントロールを置いていきましょう。
2015_02_02.png

プロジェクトを実行して Visio を起動します。
「アドイン」というタブが追加されます。
2015_02_03.png

今回のプロジェクトです。
VisioAddIn1.zip
posted by visGeek at 04:45| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2015年07月05日

Visual Studio を使って拡張機能のプロジェクトを作る

VisioAddIn1.zipVisual Studio を使って拡張機能を作って見ましょう。
VSTO(Visual Studio Tools for Office) という機能を使います。

プロジェクトを作ります。
新しいプロジェクトとして「Visio アドイン」を選択します。
2015_01_01.png

プロジェクトが作成されたら、ThisAddIn クラスの This_AddIn_Startup メソッドにダイアログボックスを表示するコードを記述します。
2015_01_02.png

実行すると Visio が起動したあとにダイアログボックスが表示されます。
2015_01_03.png

作ったプロジェクトです。
VisioAddIn1.zip
posted by visGeek at 03:56| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2015年06月21日

拡張機能

Visio は他の Office 製品と同じように機能を拡張するアドインやアドオンを作成することができます。
VBA(Visual Basic for Application)を記述する方法の他に Visual Studio を利用した方法があります。

Visual Studio による開発では C# や VB と言った新しい言語を使うことができるようになります。
posted by visGeek at 05:27| Comment(0) | TrackBack(0) | Visioカスタマイズ例 | このブログの読者になる | 更新情報をチェックする

2015年06月07日

Visioのソフトウェア表記法

VisioではCOMおよびOLE、UMLモデル図やデータフローモデル図、ワイヤーフレーム図、ワイヤーフレーム図、プログラム構造、企業アプリケーション、BPMN図など標準化された表記法に対応したフォーマットが利用できます。
posted by visGeek at 21:43| Comment(0) | TrackBack(0) | 一から学ぶVisio | このブログの読者になる | 更新情報をチェックする