|
▼りん さん こんにちわ。度々、お世話になっております。
なるほど、Pointsプロパティというものがあったのですね。
幾つか多角形も含め貼付して、下記コードをやってみました。
たしかに、右上から左下へ引いたものでも、これであれば
終点座標を取得できました。
別件で教示いただいた標準類の貼付た絵図に今度は図示を行う
段階をしていて行き詰まったのでした。
既に貼付済みの特定の矢印を図示したい場所へ配置しボタンで
新規の線と文字シェイプを貼付ていく作業に使用します。
今度も助けていただきまして、ありがとうございました。
>
>>他のプロパティで始点終点の形状などは指定できること
>>から、どちらが始点か,又は,直接的に終点の座標を知る方法
>>はありますでしょうか?
>
>始点及び終点の情報は(Shape)Nodesで取得できます。
>
>アクティブなシート上の全ての図形について始終点を表示する例です。
>
>Sub test()
> Dim msg As String, sh As Shape, nd As ShapeNodes
> '
> For Each sh In Application.ActiveSheet.Shapes
> On Error Resume Next
> Set nd = sh.Nodes
> On Error GoTo 0
> If nd Is Nothing Then
> msg = "多角形とか?"
> Else
> '1が始点
> With nd.Item(1)
> msg = "始点 X : " & .Points(1, 1) & " Y : " & .Points(1, 2)
> End With
> msg = msg & vbCrLf & " 〜" & vbCrLf
> With nd.Item(nd.Count)
> msg = msg & "終点 X : " & .Points(1, 1) & " Y : " & .Points(1, 2)
> End With
> End If
> MsgBox msg, vbInformation, sh.Name
> Set nd = Nothing
> Next
>End Sub
>こんな感じです。
>ShapeNodesのプロパティ等についてはヘルプを参照してください。
|
|