KoMaDo   VISIO SQUARE : VB/VBA  ■ Headline ■ HOME    

 KoMaDo / Headline / category :  【VISIO全般】  【News/宣伝】  【図形・操作】  【ファイル変換】  【ShapeSheet】  【VB/VBA】  【雑談その他】 ;

531 :VB6からVISIO2000へのハイパーリンクの貼り付けについて(01)  532 :シェイプを選択状態にしたい(03)  533 :接続ポイントのDセル(01)  534 :接続情報(01)  535 :数式の設定(02)  536 :作業状態が保存できません(01)  537 :順番にプログラムを読み込みたい(06)  538 :[挿入]-[フィールド] を VBAで(06)  539 :プログラム起動中は画面を固定したいのです!(01)  540 :Formulaプロパティについて(04)  541 :VB5よりVisioを起動して内容修正したい。(05)  542 :VBから使用ステンシル一覧を取得する方法(04)  543 :textBoxへの書き込み時間(02)  544 :他のプロジェクトのプロシージャを呼び出す方法(03)  545 :ネスとしたイベント関数の抜け方(01)  546 :VBProjects,VBProjectのメソッドやプロパティ(01)  547 :ActiveDocumentを設定する方法(01)  548 :線の頂点の数を変更(増やす)する(02)  549 :データベースのプロパティ(01)  550 :UMLShapeのデータを取得したい(01)  551 :印刷プレビュー画面のカスタムメニュー設定方法(03)  552 :ApplicationのEventListにDocumentOpenedイベントを追加したい(07)  553 :書き込みを停止させたい(01)  554 :ファイルの参照(01)  555 :ステータスバーの変な動き(01)  556 :カスタムメニュー設定時の終了処理時エラーについて(01)  557 :VBAでユーザ定義のメニューを追加する方法 (05)  558 :VBAからVisio図面を強制終了する方法(01)  559 :shapeシートに文字列の値が追加出来ません(03)  560 :Visio2002ベータでのVBAマクロのインポート(05)  561 :利用可能なアドインが空(02)  562 :ユーザー定義メニューを追加するにはどうすればいいのでしょう?(02)  563 :VCオートメーション VS VBAはどっちが速い??(01)  564 :shapeを貼り付けた時の位置を自動的に移動する方法(03)  565 :VISO図面に張り付いているshapeを全てチェックする方法(03)  566 :VISIO終了時にスタック領域が不足するエラー(03)  567 :VCによるVISIOオートメーション起動、及び操作について(03)  568 :ダブルクリックイベントでフォームを起動する方法(03)  569 :グループ化された図形の線の色の変更(02)  570 :グループ化したshapeのtextに値を表示する方法(01) 
ログ検索  リロード  前のページ  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 次のページ  総てのスレッド  スレッド総数 696531 - 540 を表示


531: VB6からVISIO2000へのハイパーリンクの貼り付けについて  全レス

01: 名前:ST太郎投稿日:2001/12/05(水) 15:30
はじめまして。
VB6からVISIO2000へハイパーリンクを作成したいのですが「EOF」エラーとなり正常に作成されません。
構文等についてご存知の方がいらっしゃいましたらご教授願います。
ちなみにVISIO5では正常に動作します。参考のためソースを記述しておきます。
よろしくお願いします。
Public gshpObjIE5 As Visio.Shape
Set gshpObjIE5 = pagObj.Drop(mstObj, 40 / INCH, (240 - (92 * (u.iGQFCount - 1))) / INCH)
gshpObjIE5.Cells("Address").Formula = Chr$(34) & "http://www.yahoo.co.jp" & Chr$(34)

■トップに戻る リロード  単独スレ表示



532: シェイプを選択状態にしたい  全レス

01: 名前:TAK投稿日:2001/11/29(木) 13:12
資産管理用のツールを作成していて、データをAccessで管理し、存在場所をVisioで管理して、双方をリンクさせています。
使い方として、Accessで目的のものを検索してその存在場所をVisioで表示させたいのですが、そのときにVisioの該当シェイプを選択状態にして表示したいのです。
現在は以下のようなコードで目的のシェイプを指定するところまではできていて、どれであるかを示すためにシェイプの横幅をビロ〜ンと伸ばして表示させているのですが、どう見てもかっこ悪いです。

On Error Resume Next
Set AppVisio = GetObject(, "Visio.Application")
If AppVisio Is Nothing Then
Set AppVisio = CreateObject("Visio.Application")
End If

Set docsObj = AppVisio.Documents
Set docObj = docsObj.Open("c:\○○○\×××.vsd")
Set pagsObj = docObj.Pages
Set pagObj = pagsObj("ページ - 1")
Set shpsObj = pagObj.Shapes
Set shpObj = shpsObj.ItemFromID([ShapeKey])
shpObj.Cells("width").Formula = "3 m" ← ここでほんとはシェイプを選択状態にしたい

SelectionとかSelectとかを使うのでしょうが、ヘルプを見てもよくわかりません。
どなたか分かるようでしたら教えてください。よろしくお願いします。

02: 名前:りょう投稿日:2001/11/29(木) 17:59
シェイプの選択状態は
ActiveWindow.Select shpObj, visSelect
で出来ます。

選択中の図形を図面中央に表示(ズーム)させるには
オプションの「選択している図形を中心にズーム」にチェックを付けて
docmdでズームしてあげればいいかと思います。
ちょっと手元に資料が無いので詳細を提示できなくてすみません(^_^;)

03: 名前:TAK投稿日:2001/11/29(木) 19:13
りょうさんありがとうございます。
実は ActiveWindow.Select shpObj, visSelectは既に試していました。
でもできなかったのですが、
AppVisio.ActiveWindow.Select shpObj, visSelect
として、アプリケーションを指定してやったところ、選択できるようになりました。
どうもありがとうございました。

■トップに戻る リロード  単独スレ表示



533: 接続ポイントのDセル  全レス

01: 名前:名無し投稿日:2001/11/20(火) 17:16
接続ポイントのDセルに値を入力したいのですが、CELLSSRCでセルを指定する場合、セルインデックスはvisCnnctAutoGenで宜しいのでしょうか?
うまくいかないのですが・・・

■トップに戻る リロード  単独スレ表示



534: 接続情報  全レス

01: 名前:名無し投稿日:2001/11/09(金) 11:29
接続情報を接続されている(コネクタではない)図形から取得する事は出来るのでしょうか?

■トップに戻る リロード  単独スレ表示



535: 数式の設定  全レス

01: 名前:名無し投稿日:2001/11/06(火) 14:48
VBで、

shp.Cells("User.1").Formula = "INTERSECTX(User.X1,User.Y1,User.rad,User.X2,User.Y2,User.Ang2)"
shp.Cells("User.2").Formula = "INTERSECTY(User.X1,User.Y1,User.rad,User.X2,User.Y2,User.Ang2)"
shp.Cells("User.3").Formula = "RAD(User.Ang1)"

と三つの式を設定したいのですが、
INTERSECTY式は引用符を"""三つつけないとエラーになりますがRAD式は一つで良いみたいです。
この差はどこからくるのでしょうか?
式として設定したいので引用符は三つつけたくない(文字列になるから)のですが、どのようにしたら良いでしょう?

02: 名前:名無し投稿日:2001/11/06(火) 16:37
分かりました。
存在しないユーザー定義セルが式として設定されているのでエラーになるようです。

■トップに戻る リロード  単独スレ表示



536: 作業状態が保存できません  全レス

01: 名前:mz投稿日:2001/10/31(水) 16:22
VBで図面を書き、SaveAsExメソッドで作業状態を保存し
一度Visioを終了後Shell関数を使って保存したファイルを
開こうとしているのですが、作業状態が保存できていない
ようなのです。

ステンシルをいくつか開いた状態で保存しているはずなのに
Shell関数でファイルを開くと、図面のみでステンシルが表示されません。
描画時はCreateObject(Visio.InvisibleApp)をCallしています。
CreateObject(Visio.application)をCallして描画した場合は、
作業状態がきちんと保存されているようです。
こういう仕様なのでしょうか?

またVisio起動時に、あるフォルダのステンシルを全て開くようなことを
プログラムで実現可能なのでしょうか?

併せてご教授願います。よろしくお願いします。

■トップに戻る リロード  単独スレ表示



537: 順番にプログラムを読み込みたい  全レス

01: 名前:yohetan投稿日:2001/10/19(金) 21:51
VBでつくったEXEの実行が完了してから、VISIOのVBAで作ったプログラムを
起動したいのですが、実行を完了するのを待たずに、VBAのプログラムが
起動してしまいます。どなたかご存知でしたらお教えください。
ちなみに、EXEは、Addon.run ("a".exe) 、
VBAのプログラムは、CALL AAA を使って動かしました。
よろしくお願いします。

02: 名前:りょう投稿日:2001/10/22(月) 09:35
これは
Visioを起動→ファイルを開く→何かのタイミングでEXEを実行→EXE実行が完了してからVBAを実行
ということでしょうか?
それとも
EXEからVisio起動&図面を開く→開き終わったらVBAを実行
でしょうか?

03: 名前:yohetan投稿日:2001/10/24(水) 17:54
お返事、ありがとうございます。前者のほうです。
右クリックで、プログラムを実行するときに、EXEでまず計算をさせて、
そのあとにその結果をVBAのプログラムを使って返すという処理をしたかったのですが、
起動する順番は、EXE,VBAとなっていても、完了をまたずにVBAが動いてしまうんです。
よろしくお願いします。

04: 名前:りょう投稿日:2001/10/26(金) 09:28
Addon.runにしてもshellにしてもプログラムは非同期で動いてしまうようですね。

shellのヘルプ抜粋
>既定の設定では、Shell 関数はプログラムを非同期的に実行します。
>したがって、Shell 関数を使用して実行を開始したプログラムが終了しなくても
>、Shell 関数の次のステートメントは実行されます。
既定の設定以外だと次のステートメントの実行を止められるんでしょうか・・・

05: 名前:りょう投稿日:2001/10/26(金) 09:32
>(EXE実行の)完了をまたずにVBAが動いてしまうんです。
VBのend文の直前でVBAを呼び出すのはダメなんでしょうか?

06: 名前:yohetan投稿日:2001/10/30(火) 16:17
やっぱりできない!!と上司に言ったら、VB(EXE)が完了するのを監視するようなプログラムを
VISIOで書けばいいじゃないかといわれてしまいました。
たとえば、10秒後と見るとか一分おきにとか・・・。
そのようなことはVISIOのVBAでできるんでしょうか?
VBでVBAを呼び出すのはどのようにしたらいいのでしょうか?
教えてください。よろしくお願いします。(>_<)

■トップに戻る リロード  単独スレ表示



538: [挿入]-[フィールド] を VBAで  全レス

01: 名前:かど投稿日:2001/09/21(金) 09:18
ども。かどです。Visio2000 and Visio2002 を使用しています。

[挿入]-[フィールド...]の操作をVBAで実現できる方法があれば
教えて下さい。

宜しくお願いします。

02: 名前:yoda投稿日:2001/09/21(金) 10:56
過去ログにあるように、できません。
一度、「挿入」しておけば、あとは、VBAで操作できるのですが。

03: 名前:かど投稿日:2001/09/21(金) 16:11
ども。かどです。
>過去ログにあるように、できません。
あれ?気づきませんでした。(最近チョンボが多い・・)

やっぱり出来ないのですか。残念です。

04: 名前:かず投稿日:2001/10/25(木) 13:00
こんな感じで入りませんか?これは作った日付が入ります。
Set shpobj = ActivePage.Shapes.Item(1)
shpobj.Characters.AddField 1, 1, 29

05: 名前:りょう投稿日:2001/10/26(金) 09:35
オォーーー、目からウロコ!!
なるほど、勉強になりましたm(__)m

06: 名前:かど投稿日:2001/10/29(月) 17:30
かどです。
なんと。やりたいことは、AddCustomField で
出来ました。
一言「感動したっ!!」

多謝。

■トップに戻る リロード  単独スレ表示



539: プログラム起動中は画面を固定したいのです!  全レス

01: 名前:Aka投稿日:2001/10/26(金) 15:53
初めまして。
複数のステンシルから任意のマスターをページ上にドロップするプログラムを作成したのですが、
ステンシルが開いたり閉じたりとカッコ悪いのでどうにかしたいのです。
Application.ScreeUpDating=False
 開いて
 落として
 閉じて
Application.ScreeUpDating=True
を使用してみたのですが、やはり開いて閉じてがとてもカッコ悪いのです。
何か良い方法をご存知のお方がいらしたらぜひ教えて下さい。
よろしくお願いします。

■トップに戻る リロード  単独スレ表示



540: Formulaプロパティについて  全レス

01: 名前:TKS投稿日:2001/10/24(水) 10:01
はじめまして。
ものすごく初歩的な質問かもしれませんが、どうか教えてください。
シェイプシートの文字列の値を扱いたいのですが、例えば、コメントセルに
文字列を追加したい時、

strTemp = shpObj.Cells("Comment").Formula
shpObj.Cells("Comment").Formula = """" & Mid$(strTemp, 2, Len(strTemp) - 2) & "です。"""

のような書き方で良いのでしょうか?
ダブルクォーテーションの数が、どうも納得できないので・・・。
よろしくお願いいたします。

02: 名前:TKS投稿日:2001/10/24(水) 11:42
一行目のFormulaをResultStr(0)にすると、納得できました。
VBと勝手が違うので混乱してしまいました。
お騒がせしました。

03: 名前:りょう投稿日:2001/10/24(水) 16:00
私の場合、ダブルクォーテーションを連続させるとコードが見難くなるので
個人的なプログラムではchr$(34)を使っています。

shpObj.Cells("Prop.Row_1").Formula = Chr$(34) & "あいうえお" & Chr$(34)

04: 名前:TKS投稿日:2001/10/25(木) 10:38
なるほど、そうした方が確かに見やすいですね。
真似させてもらいます。

■トップに戻る リロード  単独スレ表示


ログ検索  リロード  前のページ  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 次のページ  総てのスレッド  スレッド総数 696531 - 540 を表示