Excel VBA質問箱 IV

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

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


31554 / 76732 ←次へ | 前へ→

【50425】Re:図形をセル内の指定位置へ移動したい
発言  Ned  - 07/7/24(火) 20:46 -

引用なし
パスワード
   ▼岳 さん:
>初期の目的達成しました。
良かったですね^ ^

Sub 練習4()が今ひとつやりたい事がわからなかったのですが

Sub おまけ()
  '"Oval x"のxが連番になっている場合。
  Dim i As Long
  
  For i = 1 To 5
    With ActiveSheet.Shapes("Oval " & i)
      .Left = .TopLeftCell.Left + 10
      .Top = .TopLeftCell.Top + (.TopLeftCell.Height - .Height) / 2
    End With
  Next i
End Sub
こんな事ですか?

また、Ovalの名前連番をつけ直したい時などは
Sub おまけ2()
  Dim i As Long
  
  For i = 1 To ActiveSheet.Ovals.Count
    ActiveSheet.Ovals(i).Name = "Oval " & i
  Next i
End Sub
...などで。

ついでにShape位置の微調整だけなら名前やIndexを取らなくてもできるので
Sub おまけ3()
  Dim s As Oval
  
  For Each s In ActiveSheet.Ovals
    With s.TopLeftCell
      s.Left = .Left + 10
      s.Top = .Top + (.Height - s.Height) / 2
    End With
  Next s
End Sub
...など。

おまけ2と3で使った Oval は隠しオブジェクトです。
(以前のバージョンとの互換性を保持するためにあるものだそうです)
なので混乱するかもしれませんが、参考まで。
(ヘルプで確認しておいてください)
1 hits

【50404】図形をセル内の指定位置へ移動したい 07/7/23(月) 23:42 質問
【50406】Re:図形をセル内の指定位置へ移動したい Ned 07/7/24(火) 1:57 発言
【50410】Re:図形をセル内の指定位置へ移動したい 07/7/24(火) 6:13 お礼
【50411】Re:図形をセル内の指定位置へ移動したい 07/7/24(火) 7:14 質問
【50412】Re:図形をセル内の指定位置へ移動したい Ned 07/7/24(火) 11:23 発言
【50419】Re:図形をセル内の指定位置へ移動したい 07/7/24(火) 19:28 発言
【50420】Re:図形をセル内の指定位置へ移動したい 07/7/24(火) 19:45 お礼
【50425】Re:図形をセル内の指定位置へ移動したい Ned 07/7/24(火) 20:46 発言
【50430】Re:図形をセル内の指定位置へ移動したい 07/7/24(火) 21:55 お礼
【50413】Re:図形をセル内の指定位置へ移動したい 駿 07/7/24(火) 12:23 回答
【50414】Re:図形をセル内の指定位置へ移動したい 駿 07/7/24(火) 12:25 回答
【50422】Re:図形をセル内の指定位置へ移動したい 07/7/24(火) 20:10 お礼

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