KoMaDo   VISIO SQUARE : VB/VBA  ■ Headline ■ HOME    

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

171 :Visioへのパラメータの渡し方(05)  172 :メニューの追加について(09)  173 :カスタムプロパティーの内容にテキストボックスの値を代入したい(03)  174 :無効なシート識別子です(04)  175 :ページのUniqueID(13)  176 :図形とACCESS情報を結び付けたい(08)  177 :Visioファイルの保護(09)  178 :VBA の サンプルマクロ図面集(01)  179 :画像データのファイル名(03)  180 :VB6 カラー印刷できない(03)  181 :ヘルプに項目の追加をする(07)  182 :Menuの追加ができません。(03)  183 :全図形に対する一括処理(10)  184 :WordからDoVerbで開いた時のVisioプロセス起動を少なくしたい(04)  185 :参照設定なしで他のプロジェクトのプロシージャを呼び出す方法(07)  186 :図形ウインドウの幅を変える(03)  187 :シェイプの削除が一回でできません(04)  188 :ステンシルをDropした後、フォームからVBAに処理を戻したい(08)  189 :CreateSelection(05)  190 :VISIO UMLソリューション(03)  191 :VB6.0での更新の仕方について(02)  192 :CreatObject関数を使い方(02)  193 :VBへの値の受け渡し(03)  194 :Access のデータアクセスページでのDrawing Controlのイベント(05)  195 :excelデータより組織図を作成したい(05)  196 :回転グループ図形の幅、高さ取得(13)  197 :スタートアップ(StartUp)フォルダについて(07)  198 :INIファイルに記述した内容を取得(02)  199 :シェイプのドロップイベントをキャンセルする方法 (05)  200 :テキストの選択状態(33)  201 :座標取得(03)  202 :VisioとVSの連携(05)  203 :Visio2000の起動時ウィンドウ(04)  204 :「ファイルが見つかりません」というメッセージが出て来る(11)  205 :VBAで組織図を作成(01)  206 :図形ウインドウのVisible プロパティ(03)  207 :DoCmd関数がエラーになる例(01)  208 :DrawingControlから呼んだアドオンでのドキュメント名称の取り方(05)  209 :グループ化図形の色変更(02)  210 :図形を選択不可にする方法(03) 
ログ検索  リロード  前のページ  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 次のページ  総てのスレッド  スレッド総数 696171 - 180 を表示


171: Visioへのパラメータの渡し方  全レス

01: 名前:投稿日:2005/12/27(火) 10:12
Visioを使用させる上で、使用する人(またはPC毎に)によって起動モードもしくは動作モードを変更したいのです。
具体的には、一般ユーザー用のメニューとシステム管理者用のメニューを区別したいとか。

レジストリに起動モードやその他の情報を持って、Visioで参照して動作を変える方法が一般的なのでしょうか?
皆さんはどうしていますか?

02: 名前:yoda投稿日:2005/12/27(火) 16:01
そういう方法を紹介したページもなさそうですし、、、、
一般的ではないと思います。

03: 名前:M1号投稿日:2005/12/27(火) 16:22
>レジストリに起動モードやその他の情報を持って
ユーザー名やコンピュータ名はAPIで取ってこれそうですよ。

>Visioで参照して動作を変える方法が一般的なのでしょうか?
startupで外部プログラムを動かしてもも、startup参照を外されたら
次回起動時からは素の状態に戻りますし、テンプレートのopen/createイベントに
コードを書いてもマクロ動作を拒否されたら素のままですし・・・

いまは妙案が浮かびません^^;

04: 名前:投稿日:2005/12/27(火) 16:34
皆さんありがとうございます。
何か別な方法で、実現しなければならないようですね。

それに関連してですが、あるアプリケーション(自分で作成してインストールする)のインストールディレクトリの取得方法はあるのでしょうか?
自分自身(作成したアプリケーション)であれば、実行ディレクトリが取得可能かと思いますが、Visio内部のプログラムから取得できるのでしょうか?

お暇なときで結構です・・・・。

05: 名前:yoda投稿日:2005/12/27(火) 17:06
Debug.Print Application.Path で分かると思います。

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



172: メニューの追加について  全レス

01: 名前:投稿日:2005/12/26(月) 21:00
お世話になっております。
Visio2003にてプログラムからプルダウンメニューの追加をしたいと思っております。
それで、
Private Sub objVisio_DocumentOpened(ByVal doc As IVDocument)
Dim myButton As Object

Set myButton = Application.CommandBars("Tools").Controls.Add(Type:=msoControlButton, Temporary:=True)
myButton.Caption = "実行"
myButton.Visible = True

End Sub

とやって、ツールの下に、実行と言うメニューは追加できたのですが、この実行ボタンのサブメニューに追加する方法がわかりません。
どなたかわかる方がいらっしゃいましたら、お願いします。
また、ついでですみませんが、同じようにしてVBAのプログラムから、プルダウンメニューのトップ
(ツールと図形の間とか)に追加する方法もわかればお願いします。

02: 名前:yoda投稿日:2005/12/26(月) 21:57
質門は、一度に一つにしたほうがいいですよ。

03: 名前:yoda投稿日:2005/12/26(月) 22:59
最初の質問については、以下のようにすればよいと、思います。
ところで、蛇足ですが、CommandBarControlは、
Visioのオブジェクトではなく、Officeのオブジェクトのため、
Visioでは、コーディングとデバッグが、かなり不便です。
そのため、Excelの上で、コーディングとデバッグをしました。

Private Sub test()
Dim myButton1 As CommandBarButton, myButton2 As CommandBarButton
Dim myPop As CommandBarPopup
Set myPop = Application.CommandBars("Tools").Controls.Add(Type:=msoControlPopup, Temporary:=True)
myPop.Caption = "実行"
myPop.Visible = True
Set myButton1 = myPop.Controls.Add(Type:=msoControlButton, Temporary:=True)
myButton1.Caption = "サブメニュー1"
Set myButton2 = myPop.Controls.Add(Type:=msoControlButton, Temporary:=True)
myButton2.Caption = "サブメニュー2"
End Sub

04: 名前:yoda投稿日:2005/12/27(火) 09:19
第2の質問の答: AddメソッドのBeforeパラメータを使えば、よいと思います。たとえば、
.Controls.Add(Type:=msoControlPopup, Before:=1, Temporary:=True)
これも、Excelでコーディングすれば、直接AddメソッドのHelpが使えるので、
すぐ分かります。

05: 名前:投稿日:2005/12/27(火) 10:07
yoda様
いつもありがとうございます。サブメニュー追加の件は、上記サンプルにてわかりました。ありがとうございました。
第2の質問の件は、
Private Sub test()

Dim myButton1 As CommandBarButton, myButton2 As CommandBarButton
Dim myPop As CommandBarPopup
'Set myPop = Application.CommandBars("Tools").Controls.Add(Type:=msoControlPopup, Temporary:=True)
Set myPop = Application.CommandBars("Tools").Controls.Add(Type:=msoControlPopup, Before:=1, Temporary:=True)
myPop.Caption = "実行"
myPop.Visible = True
Set myButton1 = myPop.Controls.Add(Type:=msoControlButton, Temporary:=True)
myButton1.Caption = "サブメニュー1"
Set myButton2 = myPop.Controls.Add(Type:=msoControlButton, Temporary:=True)
myButton2.Caption = "サブメニュー2"

End Sub
として、実行したのですが、私外としたのとちょっと違うようです。
私の説明が悪かったのですが、Visioのプルダウンメニューの任意の場所。
たとえば、[書式]と[ツール]の間に挿入したいのです。
[ツール]メニューの配下ではなくトップに表示させたいのですが、可能なものなのでしょうか?
(手動で設定すれば可能なのはわかりますが・・・)
なにとぞよろしくお願いします。

06: 名前:yoda投稿日:2005/12/27(火) 10:57
Set myPop = Application.CommandBars("Menu Bar").Controls.Add(Type:=msoControlPopup, Before:=7, Temporary:=True)
でどうでしょうか?

07: 名前:投稿日:2005/12/27(火) 11:01
yoda様
上記指示の通りで、できました。ありがとうございました。

08: 名前:投稿日:2005/12/27(火) 12:49
メニューバーにメニューを追加、追加したメニューのサブメニューを追加することはできましたが、さらにそのサブメニュー
を作成することは、可能なのでしょうか?

09: 名前:yoda投稿日:2005/12/27(火) 13:10
同じようにすれば、できるのではないかと思います。
演習問題として、お試しになってはいかが?

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



173: カスタムプロパティーの内容にテキストボックスの値を代入したい  全レス

01: 名前:JOE投稿日:2005/12/17(土) 23:54
custom properties のなかの prop.costとかにTEXT_BOXの値を代入
したいのですが、prop.costの前のOBJECTは何になるのですか?
shapeの中にもcellsの中にも見つかりません。
よろしくお願いします

02: 名前:JOE投稿日:2005/12/18(日) 00:29
PS
shapeOBJ.cells("prop.cost").row = TEXT_BOX
ではだめなのですね。

03: 名前:JOE投稿日:2005/12/18(日) 00:34
自己解決 お騒がせしました!!
shapeobj.cells("prop.cost").fomula=TEXT_BOX
で解決しました

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



174: 無効なシート識別子です  全レス

01: 名前:サハラ投稿日:2005/12/12(月) 14:38
始めまして。
既にドロップしてある図形の.Nameを読み取るという単純な作業ができないで居ます

Dim ObjCnt As Long
Dim PagObj As Visio.Page
Dim ShpsObj As Visio.Shapes
Set PagObj = ActivePage
Set ShpsObj = PagObj.Shapes

For ObjCnt = 1 To ShpsObj.Count
If InStr(ShpsObj.Item(ObjCnt).Name, "Arc") Then '.Nameに"Arc"という文字を含んでいたら

このIf文の部分で「無効なシート識別子です」というエラーが発生します
大雑把な聞き方で申し訳ないのですが、
何か対処法をご存知ではないでしょうか?

02: 名前:yoda投稿日:2005/12/12(月) 15:05
動きましたよ!
なにも問題ないと思いますが。

03: 名前:M1号投稿日:2005/12/12(月) 15:16
もしかしてループの中でシェイプを削除していませんか?

For ObjCnt = 1 To ShpsObj.Count
 If InStr(ShpsObj.Item(ObjCnt).Name, "Arc") Then ShpsObj.Item(ObjCnt).Delete
next

のようのObjCntを加算しながらシェイプを削除する処理を入れると
最終的にShpsObj.CountとObjCntの数が合わなくなって
「無効なシート識別子です」となりますので、

For ObjCnt = ShpsObj.Count To 1 Step -1
・・・・
next

の形に変えると良いです。

04: 名前:サハラ投稿日:2005/12/12(月) 15:28
ありがとうございます。
yodaさんのおっしゃる通り、普通に動くのは知っていたのですが...
M1号さんの書き込みでわかりました。
実は、If文以降にグループ化を行っていたので、
>最終的にShpsObj.CountとObjCntの数が合わなくなって
いたようです

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



175: ページのUniqueID  全レス

01: 名前:PUL投稿日:2005/08/30(火) 18:16
こんばんは.
Windows XP + Visio2003 で,あるシステムを作成しています.
「基本フローチャート」ステンシルにある「外部ページ参照」と同じように,
ステンシルからのドロップ時に対応するシェイプを他のページに作成し,
ダブルクリックで相方にジャンプする機能を持つシェイプを作ろうとしています.
「外部ページ参照」に倣って,シェイプシートのダブルクリックイベント欄に
 =RUNADDONWARGS("OPC","/CMD=2")
と設定して実現させようとしたら,シェイプに対するIDとページに対するIDが必要になりました.
シェイプに対するIDは,
 Shape.UniqueID(visGetOrMakeGUID)
で割り当て・取得できたのですが,
同じようにページに対するIDを取得する方法がわかりませんでした.
どうすれば取得できるでしょうか.

または,「外部ページ参照」と同じ機能の実現に,別の方法があるでしょうか.

どうぞよろしくお願いいたします.

05: 名前:yoda投稿日:2005/08/31(水) 13:26
すみません、URLが抜けていました。「別ページ参照について」は、
http://www.hst.co.jp/cgi-bin/c-board/c-board.cgi?cmd=one;file=1118.msg [source] [check]

06: 名前:yoda投稿日:2005/08/31(水) 13:35
またまた間違えました。問題は。「別ページ参照について」ではなく、
ダブルクリックしらた、別ページを開くことだと思います。
それは、単純に、
Application.ActiveWindow.Page = Application.ActiveDocument.Pages.ItemU("Page-2")
または、
ActiveWindow.Page = ThisDocument.Pages.ItemU("Page-2")
でよろしいかと。

07: 名前:yoda投稿日:2005/08/31(水) 13:38
補足します。06のマクロをRUNADDONで、起動するということです。

08: 名前:PUL投稿日:2005/08/31(水) 14:30
yoda様,
重ね重ね,説明不足で申し訳ありませんでした.
おっしゃるとおり,「基本フローチャート」ステンシルの「外部ページ参照」シェイプのことでした.
よくわからないままアドオンに似せて作ってしまうと,予期しない動作をしてしまったり
却ってややこしくなることもわかりました.
yoda様が教えてくださったとおり,RUNADDONでマクロが動くようにしたいと思います.
詳細なご回答ありがとうございました.

09: 名前:yoda投稿日:2005/12/09(金) 15:35
今さらですが、『=RUNADDONWARGS("OPC","/CMD=2")』 は、
シェイプのシェイプシートの”EventDrop”セルに入れ、ステンシル
または図面ステンシルに登録し、そこから、Visio図面にドロップ
すると、正常に動作します。そのほかの方法ではだめのようです。
たとえば、”EventDblClick”セルに入れても、正常に動作しません。
また、”ThisDocument”に、以下のようなマクロを作っても、
正常に動きません。
Private Sub Document_ShapeAdded(ByVal Shape As IVShape)
Application.Addons("OPC").Run ("/CMD=1")
End Sub

10: 名前:yoda投稿日:2005/12/10(土) 10:14
ちょうど今、英文の掲示板で教えていただいたのですが、
RUNADDONWARGS("OPC","/CMD=4") とすると、
”EventDblClick”セルに入れても、正常に動作します。
しかも、外部図面参照が、できるようになります。
さらにこれは、”EventDrop”に入れると、図面にドロップ
したときも、外部図面参照もできるようにすることが、できます。
取材源はここです。「Discussions in visio.developer.vba」
http://msdn.microsoft.com/newsgroups/default.aspx?dg=microsoft.public.visio.developer.vba&lang=en&cr=US [source] [check]

11: 名前:yoda投稿日:2005/12/10(土) 10:17
09の、『=RUNADDONWARGS("OPC","/CMD=2")』 は、
、『=RUNADDONWARGS("OPC","/CMD=1")』 の間違いでした。
訂正します。

12: 名前:yoda投稿日:2005/12/10(土) 11:19
「upload bbs」に、「外部ページ参照」、「外部図面参照」の
サンプル図面をアップしました。よろしければ、お試しください。

13: 名前:yoda投稿日:2005/12/10(土) 19:55
10で、RUNADDONWARGS("OPC","/CMD=4") とすると、
”EventDblClick”セルに入れても、正常に動作します。
と、書きましたが、問題があることが、わかりました。
最初に、図面の上にドロップして、ダブルクリックすると、
「外部図面参照」ウインドウが出て、リンクの設定ができ、
マウスの右ボタンで、リンクにジャンプするところまでは、
よいのですが、その後が問題です。
そのあと、もう一回、ダブルクリックすると、相手先にコピー
された、シェイプに設定されていた、戻るためのリンクが、
こわれてしまい、リンク先で、マウスの右ボタンで、メニュー
を選んでも、もとに戻れなくなってしまう、ということが、わかり
ました。

■トップに戻る リロード  全レスを表示



176: 図形とACCESS情報を結び付けたい  全レス

01: 名前:ファントム投稿日:2005/12/08(木) 13:27
現在、VB上でVISIOファイルを検索し
選択された図面を貼り付けて、
更に図面上の図形を選択すると
その図形に関する情報をACCESSから取り出して、
テキストボックス等に表示させるアプリケーションを考えています。

ですがOLEを使って図面を貼り付けると、
図形選択をするには、VB上でVISIOを起動しなくてはならず
VB上でのACCESSとの連携が上手くいきません。
方法がまずいのかもしれないのですが、
VB、VISIO共に初心者ゆえに他の手法が思いつきません。

このような目的を達成できる方法、サンプル等をご存知の方がいらっしゃるならば教えて下さい。
よろしくお願いします。

02: 名前:yoda投稿日:2005/12/08(木) 16:46
ADO(Microsoft ActiiveX Data Object) を使うと、いいようです。
ADOを使ったサンプルは、ADOで検索すれば、Accessのサイト
などで、見つかると思います。

03: 名前:なか投稿日:2005/12/08(木) 16:48
質問です。
>>選択された図面を貼り付けて、
とありますがどこに貼り付けるんですか?

>>テキストボックス等に表示させる・・・
とありますがどこのテキストボックスに表示させるのですか?

質問内容が大雑把すぎて回答し難いのでもう少し噛み砕いた形で質問してくれるとありがたいです。
例えば、VB上でVISIOを起動する方法を教えてくださいとか

04: 名前:M1号投稿日:2005/12/08(木) 18:27
>図形選択をするには、VB上でVISIOを起動しなくてはならず
Visio drawing control だとVBのフォームで動きますけど、そういう問題じゃない!?

05: 名前:ファントム投稿日:2005/12/09(金) 07:30
質問の仕方が悪かったために
ご迷惑をおかけして申し訳ありません。

こちらの計画では
VISIO画面の貼り付けを行う場所や
図形情報を表示させるテキストボックスも含めて
全てのコントロールを一つのVBのフォーム上に配置しようと思っています。

そこでVBのフォーム上に貼り付けたVISIO図面を
『画像』としてだけではなく、図面上の図形を個別に認識・選択する機能も含めて使用したいのですが
それをOLE以外のコントロールを用いて達成させる方法を教えて頂きたいのです。

どうかよろしくお願いします。

06: 名前:yoda投稿日:2005/12/09(金) 08:54
04 の回答でよいのではないでしょうか。

07: 名前:yoda投稿日:2005/12/09(金) 09:14
そういうサンプルなら、今なら、まだ、ファイルアップローダに、残っています。

08: 名前:ファントム投稿日:2005/12/09(金) 10:28
皆様のお力添えに感謝します。
結構簡単な事だったみたいですね。
まだまだ知識を蓄えなければならないようです。
ありがとうございました。

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



177: Visioファイルの保護  全レス

01: 名前:名無しさん投稿日:2005/11/29(火) 11:40
Visioファイルを「開く、保存する」などの操作を対してパスワードを設定することは可能でしょうか?
Excel等のように基本機能であればよいのですが、無いようなのでVBAなどで実現できないかと考えています。
よろしくお願いします。

02: 名前:yoda投稿日:2005/11/29(火) 13:30
パスワードを設定する機能は、VBAマクロの保護について
はありますが、図面の方にはないような、気がします。
そうだとすると、VBAマクロでも、できないのではないかと
思います。

03: 名前:わんこ投稿日:2005/11/29(火) 15:55
完璧とはいえない代替案ですが…。

<その1>
ファイルを開いたらすぐ閉じるように以下のコードを入れておく。
マクロ無効で開かれたら、開けてしまいますが(^^;;

Private Sub Document_DocumentOpened(ByVal doc As IVDocument)
   ThisDocument.Close
End Sub

<その2>
全部グループ化して、その他セクションのNoAlignBoxセル、NoObjHandlesセル、図形座標セクションのNoShowセルをTrueに設定しておく。
これで、とりあえず、パッと見は何もない図面に見えます。
あるていど、分かる人が開いたら、バレバレですが(^^;;

もし、改ざんされたくないだけだったら、保存時に読みとり専用で保存ということは出来ます。
保存するときに、保存ボタンの横の小さな▼をクリックして選択できます。

04: 名前:名無しさん投稿日:2005/11/29(火) 20:02
yodaさん、わんこさん、ありがとうございます。

マクロが有効である前提で、以下のコードで
ファイルを開く時にパスワードをかけることができました。

Sub Document_DocumentOpened(ByVal doc As IVDocument)
 Dim returnData As String
 Dim Msg, Style, Title, Help, Ctxt, Response, MyString

INPUT_PASS:
 returnData = InputBox("パスワードを入力してください")
If returnData = "5963" Then
Exit Sub
ElseIf StrPtr(returnData) = 0 Then
GoTo DOC_CLOSE
Else
GoTo ERR_MESSAGE
End If
Exit Sub

ERR_MESSAGE:
 Msg = "正しいパスワードを入力してください。"
 Style = vbOKCancel + vbDefaultButton1
 Title = "パスワードのエラー"
 Response = MsgBox(Msg, Style, Title)
If Response = vbOK Then
GoTo INPUT_PASS
Else
ThisDocument.Close
End If

DOC_CLOSE:
 Msg = "終了しますか?"
 Style = vbOKCancel + vbDefaultButton2
 Title = "アプリケーションの終了"
 Response = MsgBox(Msg, Style, Title)
If Response = vbOK Then
ThisDocument.Close
Else
GoTo INPUT_PASS
End If
End Sub


また、EXCELでは、以下のマクロを仕込むことで、マクロを無効にすると
Workbookが開かないようにできることもわかりました。
Visioでもマクロを無効にするとドキュメントが開けないようにできれば、
解決すると思うのですが、どなたか方法をご存知ないでしょうか?

Const dPWD = vbVerticalTab & "Invalid" & vbVerticalTab

Private Sub Workbook_Beforesave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
With Application
.EnableEvents = False
.ScreenUpdating = False
IsAddin = True
Protect dPWD, Windows:=True
Save
Unprotect dPWD
IsAddin = False
Saved = True
.ScreenUpdating = True
.EnableEvents = True
End With
Cancel = True
End Sub

Private Sub Workbook_Open()
Unprotect dPWD
IsAddin = False
Saved = True
End Sub

05: 名前:yoda投稿日:2005/11/29(火) 20:36
図面を開こうとしたら、セキュリティレベルを下げて、マクロを使用するか
どうかというダイアログが表示されないようにすれば、良いかも知れませ
ん。「セキュリティ設定について」というスレッドが参考になるかも知れま
せん。

06: 名前:名無しさん投稿日:2005/11/29(火) 21:58
なるほど、試してみます。ありがとうございます。

07: 名前:visGeek投稿日:2005/11/30(水) 09:47
図面にパスワードを設定する機能はVisio 2003から削除されました。

VBAやadd-onなどである程度の制限をかけることは
可能かもしれませんが、それらを無効にして
Visioを開かれた場合には回避されてしまいます。

開かれたくないというのであれば
ファイル自体を暗号化するのが良いでしょう。

08: 名前:yoda投稿日:2005/11/30(水) 10:18
>それらを無効にしてVisioを開かれた場合には回避されてしまいます。
確かにそうですねー。
>ファイル自体を暗号化するのが良いでしょう。
これが、正解でしょうねー。

09: 名前:名無しさん投稿日:2005/12/02(金) 10:49
みなさん。どうもありがとうございます。
運用面なども考えると、ファイル自体に保護をかけるよりも
ポータル製品などでアクセス制御をするということも検討すべきですね。

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



178: VBA の サンプルマクロ図面集  全レス

01: 名前:yoda投稿日:2005/11/24(木) 15:10
いままで、この掲示板や、他の掲示板で、教えていただいた、
VBAのサンプルをおさめたVisio2003の図面集を、まとめて、
ここにアップしました。よろしければ、どうぞ。
http://yoda-e.hp.infoseek.co.jp/VISIO/Tips/Visio%20VBA%20Tips.lzh [source] [check]

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



179: 画像データのファイル名  全レス

01: 名前:投稿日:2005/11/22(火) 11:35
Visio2003を使用しておりますが、ファイルから画像データを挿入した場合、VBAにて挿入された画像のオリジナルファイルパスの取得は、可能でしょうか?
不可能であれば、逆に自分(VBAでファイル選択画面などを作って)で指定した画像ファイルをVisio上に貼り付けることは、可能でしょうか?
よろしくお願いします。

02: 名前:yoda投稿日:2005/11/22(火) 12:53
以前、よく似た質問があったのですが、場所を、覚えていませんが、
挿入した画像にファイルパスを添付するコードをテストしたことがあります。
いま、テストして見ましたら、動きましたので、貼り付けます。
ExcelのType Library への参照設定が必要です。
Sub test()
Dim x As New Excel.Application
Dim fd As office.FileDialog
Dim f As String
Dim shp As Visio.Shape

x.Visible = False
Set fd = x.FileDialog(msoFileDialogOpen)

With fd
.Filters.Add "Image file", "*.gif; *.jpg; *.jpeg", 1
If .Show = -1 Then
f = .SelectedItems.Item(1)
End If
End With

x.Quit
Set x = Nothing

MsgBox f
Set shp = ActivePage.Import(f)
shp.Text = f
End Sub

03: 名前:投稿日:2005/11/22(火) 13:57
yodaさん、いつもありがとうございます。
試したところ、良好です。助かりました。

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



180: VB6 カラー印刷できない  全レス

01: 名前:よぴよん投稿日:2003/07/28(月) 17:23
VB6 WIN2000 で文字をカラーで印刷する為に、PRINTER.FORECOLORで色を設定しても
印刷するとモノクロで出てきます。
同じようなやり方で他のプログラムは問題なく色が印刷されているので(同じプリンター)
何が悪いのかさっぱり分からず困っています。
プリンタオブジェクトのカラーモードはカラーにしてあります
なにか考えられる原因はありますでしょうか

02: 名前:ラッキーパンチ投稿日:2003/09/08(月) 10:33
私も気になります。

VBからでは印刷命令を出すだけで、プレビュー確認すら出来ない・・・。
どうしたモンでしょうか?

03: 名前:カラー印刷できる?投稿日:2005/11/20(日) 17:53
なんだかせこいなぁー。でも
Private Sub Command1_Click()
Printer.FontSize = 1
Printer.ForeColor = QBColor(0)
Printer.Print
Printer.FontSize = 100
Printer.ForeColor = QBColor(4)
Printer.Print "亜"
Printer.ForeColor = QBColor(3)
Printer.Print "亜"
Printer.EndDoc
End Sub

Private Sub Form_Load()
Printer.ColorMode = 2
End Sub

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


ログ検索  リロード  前のページ  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 次のページ  総てのスレッド  スレッド総数 696171 - 180 を表示