VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2007/08/10(Fri) 12:44
投稿者魔界の仮面弁士
Eメール
URL
タイトルRe: VBからVisio2007のファイルを開きたい。

> Dim appVisio As Microsoft.Office.Interop.Visio.Application
それは、VB.NET 2002, VB.NET 2003, VB2005, VB2008 の場合でしょう。
ここは VB6 用の掲示板ですので、.NET 関係だとしたら板違いです。

もし、VB6 なのだとすれば、
 Dim appVisio As Visio.Application
という宣言になります。


> appVisio = CreateObject("visio.application")
参照設定しているのであれば、CreateObject を使うのではなく、
New キーワードを使って生成するようにしてください。

 '==== VB6の場合 ====
 Set appVisio = New Visio.Application

 '==== .NETの場合 ====
 appVisio = New Microsoft.Office.Interop.Visio.ApplicationClass()


> Dim docVisio As Microsoft.Office.Interop.Visio.Documents
> docVisio = appVisio.Documents.Open("C:\sample.vsd")
.Documents.Open の戻り値は、『Documents』ではなく『Document』型です。

 '==== VB6の場合 ====
 Dim docVisio As Visio.Document
 Set docVisio = appVisio.Documents.Open("C:\sample.vsd")

 '==== .NETの場合 ====
 Dim docsVisio As Microsoft.Office.Interop.Visio.Documents = appVisio.Documents
 Dim docVisio As Microsoft.Office.Interop.Visio.Document = docsVisio.Open("C:\sample.vsd")


なお、.NET の場合は、取得したそれぞれの COM オブジェクトに対して、
System.Runtime.InteropServices.Marshal.ReleaseComObject メソッドを
呼び出して、オブジェクトの解放を行わなければなりません。
(VB6 の場合は、オブジェクトの解放は自動的に行われます)


> 参照設定で "Microsoft Visio **.* Type Library"を追加してあります。

12.0 ですよね?? Visio 2007 なのですから。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -