tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^3: createobject
投稿日: 2012/06/13(Wed) 21:51
投稿者魔界の仮面弁士
> 確認すると6.5になっていました。
すみません、勘違いです。Excel 2007 は 6.5 で正しいです。
VBA7 は Excel 2010 で採用されているバージョンです。
http://msdn.microsoft.com/ja-jp/library/ee691831.aspx

<蛇足情報>
VBA7 では、LongLong 型や CLngLng 関数などの、64bit対応の機能が追加されています。
http://msdn.microsoft.com/en-us/library/ff520658%28PROT.10%29.aspx

なお、Office 2010 の DVD には 64bit 版のインストーラが同梱されていますが、
既定のセットアップのまま進めた場合は、32bit版がインストールされるようになっています。
</蛇足情報>


> SolidWork(64bit版)というソフトを使っていますが
  SolidWork ですか?
  SolidWorks ではなく?

> Set swapp = CreateObject("sldworks.application")
そのコードを実行した結果、そのアプリがどのように立ち上がるのかは、
アプリケーション(SolidWork)側の仕様によるもので、VBA 側のバージョンは関係ありません。
(同じアプリケーションでも、設定によって振る舞いが変わる可能性もありますし)


> Set swapp = GetObject("", "sldworks.application")
Excel などでは、
 Set xlBook = GetObject("C:\temp\依頼書.xls")
 'Set xlApp = xlBook.Application
 'Set xlWindow = xlApp.Windows(1)
 'xlApp.Visible = True
 'xlWindow.Visible = True
のように、文書ファイル名を指定して、既存のオブジェクトを得る手法もありますが、
(ファイルが開かれていない場合は、そのファイルが自動的に開かれる)
私はSolidWorkとかいうCADソフトを使ったことが無いため、あまり情報を持ち合わせていません。
Office 等に比べると利用者数が少ないでしょうし、回答は付きにくいかも知れませんね。


> を早速試したのですが、createobjectを実行したときと同じ動作になりました。
前回の回答に挙げた「ROT」を辿る方向でも調査してみてください。
もしも、下記の「VBのGetObjectで取得できるオブジェクトを列挙する」にて、
起動済みのオブジェクトが見つかるなら、そこから取得できるかと思います。
http://www1.koalanet.ne.jp/akiya/vbtaste/vbp/

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

古いスレッドにレスはつけられません。