| 
    
     |  | ▼りん さん: こんばんわ
 ちょっと興味があるので質問させて下さい
 1回目は線を書き2回目のクリックで線をけすには
 どのような修正が必要なのでしょうか?
 ご教授お願いします。
 >
 >>図形から線を上に出したいのですが、方法がわかりません。
 >
 >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テクニック」をうたってるサイトでできると思いますよ。
 
 |  |