Visio 2007 または Visio 2010 の ListView コントロール経由で、OLE オブジェクトを図面上にドラッグ アンド ドロップして追加すると、意図しない場所に OLE オブジェクトが置かれる

現象
Microsoft Office Visio 2007 または Microsoft Visio 2010 の ListView コントロール経由で、OLE オブジェクトを図面上にドラッグ アンド ドロップして追加すると、図面上の意図しない場所に OLE オブジェクトが置かれます。

この現象は、[ページ サイズ] の設定が以下の条件をすべて満たした場合に発生します。

Visio 2010 の場合:

[ページ サイズ] の設定が [必要に応じてページを自動的に展開する] に設定されている。

Visio 2007 または Visio 2010 の場合 :

[ページ サイズ] の設定が [カスタム サイズ] に設定されている。

補足 : [ページ設定] 画面から [カスタム サイズ] に設定した場合は問題は発生しませんが、図面上のページ枠を Ctrl +ドラッグで拡張した場合に現象が発生します。
回避策
この現象に関する有効な回避策はありません。
状況
マイクロソフトでは、この問題について現在調査中です。詳細については、わかりしだいこの資料に掲載する予定です。
詳細

問題の再現手順

Visio 2010 の場合 :
  1. Visio2010 を起動し、新規の図面を作成します。
  2. VBE を起動します。
  3. [挿入] メニューの [ユーザー フォーム] をクリックし、ユーザー フォームを追加します。
  4. [ツール] メニューの [その他のコントロール] をクリックし、[Microsoft ListView Control, version 6.0] のチェックをオンにして [OK] をクリックします。
  5. ListView コントロールをユーザー フォーム に配置します。
  6. UserForm コントロールの [コードの表示] をクリックし、以下のコードを入力します。
    Private Sub ListView1_OLEStartDrag(Data As MSComctlLib.DataObject, AllowedEffects As Long)   'ドロップ操作によって、ソースからターゲットにデータがコピーされます。    AllowedEffects = 1    Visio.ActiveWindow.DeselectAllEnd SubPrivate Sub UserForm_Initialize()'テスト用のアイテムを用意します。    Me.ListView1.View = lvwList    Me.ListView1.ColumnHeaders.Add 1, "アイテム", "アイテム"    Me.ListView1.ListItems.Add 1, "TestItem1", "TestItem1"End Sub

  7. ThisDocument オブジェクトをクリックして、以下のコードを入力します。

    Sub Show_Frm()    UserForm1.ListView1.OLEDragMode = ccOLEDragAutomatic    UserForm1.Show FalseEnd Sub
  8. VBE で編集した内容を保存します。
  9. [ファイル] メニューの [ページ設定] をクリックし、[ページ サイズ] タブをクリックして、[ページ サイズ] が [必要に応じてページを自動的に展開する] に設定されていることを確認します。
  10. マクロを実行します。
  11. 表示されたフォームの ListView からアイテムをクリックし、ページの枠外 (図面下側) にドラッグ アント ドロップします。
  12. ページの枠内に ListView のアイテムをドラッグ アント ドロップします。
Visio 2007 または Visio 2010 の場合 :
  1. Visio 2007 または Visio 2010 で 上記と同じVisio 図面を用意します。
  2. [ファイル] メニューの [ページ設定] をクリックし、[ページ サイズ] タブをクリックして、[ページ サイズ] が [カスタム サイズ] に設定されていることを確認します。
  3. 図面のページ枠を Ctrl + ドラッグでページを下方向に拡張します。
  4. マクロを実行します。
  5. 表示されたフォームの ListView からアイテムをクリックし、図面上にドラッグ アンド ドロップします。

結果

図面上の意図しない場所に OLE オブジェクトが置かれます。

補足 : 「Visio 2007 または Visio 2010 の場合」 の手順で は、[ページ設定] 画面から [カスタム サイズ] に設定した場合は問題は発生しませんが、図面上のページ枠を Ctrl +ドラッグで拡張した場合に現象が発生します。
プロパティ

文書番号:2305046 - 最終更新日: 10/04/2016 14:28:00 - リビジョン: 4.0

Microsoft Office Visio 2007 Service Pack 1, Microsoft Visio Premium 2010, Microsoft Visio Professional 2010, Microsoft Visio Standard 2010

  • kbharmony kbexpertiseinter kbtshoot kbbug KB2305046
フィードバック