Excel VBA質問箱 IV

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

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


33943 / 76734 ←次へ | 前へ→

【48006】Re:オートシェイプにマクロを登録…
回答  りん E-MAIL  - 07/3/29(木) 22:02 -

引用なし
パスワード
   初心者 さん、こんばんわ。

>図形から線を上に出したいのですが、方法がわかりません。

AddLineの引数で、線を引く位置を指定します。
Sub test()
  Dim sh1 As Shape, sh2 As Shape, ws As Worksheet
  Set ws = Application.ActiveSheet
  '
  If TypeName(Application.Caller) = "String" Then
   'クリックされた図形をセットします
   Set sh1 = ws.Shapes(Application.Caller)
   'その図形の位置を基準に線(終点↑)を引きます
   With sh1
     'AddLineの引数の意味はヘルプで見てね
     With ws.Shapes.AddLine(.Left + .Width / 2, .Top , .Left + .Width / 2, .Top - .Height)
      .Line.EndArrowheadLength = msoArrowheadLong
      .Line.EndArrowheadWidth = msoArrowheadWide
      .Line.EndArrowheadStyle = msoArrowheadStealth
     End With
   End With
  Else
   MsgBox "Clickで呼んでいない" '直接実行するとエラーになるので除外
  End If
  '
  Set sh1 = Nothing: Set sh2 = Nothing
  Set ws = Nothing
End Sub

>もし、コードの勉強が出来るサイト等をご存知であればご紹介願いたいのですが…。
コードの勉強はここを含めたQ&Aサイトや、「VBAテクニック」をうたってるサイトでできると思いますよ。

4 hits

【47993】オートシェイプにマクロを登録… 初心者 07/3/29(木) 14:08 質問
【47996】Re:オートシェイプにマクロを登録… りん 07/3/29(木) 14:45 回答
【47997】Re:オートシェイプにマクロを登録… 初心者 07/3/29(木) 15:07 お礼
【48000】Re:オートシェイプにマクロを登録… 初心者 07/3/29(木) 16:22 質問
【48006】Re:オートシェイプにマクロを登録… りん 07/3/29(木) 22:02 回答
【48007】Re:オートシェイプにマクロを登録… toshi 07/3/30(金) 0:48 発言
【48008】Re:オートシェイプにマクロを登録… りん 07/3/30(金) 8:35 回答
【48009】Re:オートシェイプにマクロを登録… 初心者 07/3/30(金) 8:44 お礼
【48015】Re:オートシェイプにマクロを登録… toshi 07/3/30(金) 15:22 お礼

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