Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


36804 / 76738 ←次へ | 前へ→

【45110】Re:オートシェイプの移動について
発言  ichinose  - 06/12/13(水) 0:35 -

引用なし
パスワード
   ▼akira さん:
こんばんは。
>  このコードで試してみたのですが Set shprng=Selection.ShapeRange で
> エラーになります。どなたかご教授ください。APIの宣言はしています。 

エラーになるコードとこの時のエラーコードやエラーメッセージ
をキチンと掲載して下さいね!!
(APIだって、記述してください)
例えば

'==============================================================
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
'==============================================================
Sub test()
  Dim i As Integer
  Dim shprng As ShapeRange
  Set shprng = Selection.ShapeRange
  With shprng
    For i = 1 To 100
     .IncrementTop -0.75
     .IncrementLeft 0.75
     DoEvents
     Sleep 200
     Next
    End With
End Sub

上記のコードを作成された図形を選択した状態で作動させます。
これだとエラーになりません。ShapeRangeコレクションの型を持つ変数に
ShapeRangeコレクションを割り当てるのですから、エラーになりませし、
正常に作動しますよね!!

でも、
'==============================================================
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
'==============================================================
Sub test()
  Dim i As Integer
  Dim shprng As Shape
  Set shprng = Selection.ShapeRange
  With shprng
    For i = 1 To 100
     .IncrementTop -0.75
     .IncrementLeft 0.75
     DoEvents
     Sleep 200
     Next
    End With
End Sub

として図形を選択した状態で作動させます。

すると、「型が一致しません」13 というエラーが

Set shprng = Selection.ShapeRange

この行で発生しますね!!

ShapeとShaperangeは違うオブジェクトですから・・・。

この場合、

Set shprng = Selection.ShapeRange(1)

と単独のShapeとして割り当てるとエラーになりません。


それとも・・・、
作成した図形を選択しないで実行したのでしょうか?

そうだとしたら、

Set shprng=Selection.ShapeRange 

この行で「オブジェクトはこのプロパティまたはメソッドをサポートしていません」
438 というエラーが発生します。
上記のコードは、図形を選択された状態での実行を前提にしています。


図形は、オブジェクトが色々あるので面倒ですが、Helpを確認しながら
ひとつひとつ調べてみてください。
0 hits

【45109】オートシェイプの移動について akira 06/12/12(火) 23:46 質問
【45110】Re:オートシェイプの移動について ichinose 06/12/13(水) 0:35 発言
【45116】Re:オートシェイプの移動について akira 06/12/13(水) 11:17 お礼

36804 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free