Excel VBA質問箱 IV

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

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


47933 / 76732 ←次へ | 前へ→

【33744】Re:オブジェクトの選択方法
質問  nn  - 06/1/19(木) 19:47 -

引用なし
パスワード
   ▼小僧 さん:
ありがとうございました。
自分なりにまとめてみたのですが、エラーになってしまいます。
◎まず、四角で書かれたものがいくつあるか探します。
With ActiveSheet.Shapes
    numShapes = .Count 'Shape数
    If numShapes > 1 Then  '1以上あるなら
      numAutoShapes = 1
      ReDim autoShpArray(1 To numShapes) 'すべてのオートシェイプを含む配列を作成
      For i = 1 To numShapes
        If .Item(i).Type = msoShapeRectangle Then '四角なら
          autoShpArray(numAutoShapes) = .Item(i).Name
          numAutoShapes = numAutoShapes + 1
        End If
      Next
    End If
  End With
◎その後その四角に対して、対象かどうか知りたいのですが
  For Each MyShape In ActiveSheet.Shapes
ではなく、Forを使って定義しようと、自分なりに頑張ってみたのですが
※でエラーです.For Each を使ったことのない初心者なので
定義の仕方がおかしいようですが・・・

  For i = 1 To numAutoShapes
※    MyShape = autoShpArray(i)
    If MyShape.Top - (Range("H" & lngRow).Top + 4) >= -0.25 And _
      MyShape.Top - (Range("H" & lngRow).Top + 4) <= 0.25 Then
      MsgBox "対象の四角形は" & MyShape.Name & "かも"
End If
  Next

0 hits

【33723】オブジェクトの選択方法 nn 06/1/19(木) 11:38 質問
【33727】Re:オブジェクトの選択方法 小僧 06/1/19(木) 14:17 回答
【33730】Re:オブジェクトの選択方法 nn 06/1/19(木) 15:21 質問
【33733】Re:オブジェクトの選択方法 小僧 06/1/19(木) 16:22 回答
【33744】Re:オブジェクトの選択方法 nn 06/1/19(木) 19:47 質問
【33753】Re:オブジェクトの選択方法 小僧 06/1/19(木) 21:43 回答
【33779】Re:オブジェクトの選択方法 nn 06/1/20(金) 11:58 お礼

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