ここから本文です

ExcelのVBAについて質問です。

アバター

ID非公開さん

2020/1/2422:42:45

ExcelのVBAについて質問です。

フリーフォームで挿入した多角形の、頂点の座標を取得する(A列にx座標、B列にy座標)マクロを作りたいです。自分でいろいろと作ってみたり、WEBで調べたりしてみましたが、作れませんでした。

教えていただければ嬉しいです。
よろしくお願いします。


あと、もしフリーフォームをボタン一つで挿入モードにする方法がありましたら、教えて頂きたいです。

閲覧数:
41
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

hot********さん

2020/1/2506:08:05

フリーフォームのX座標とY座標をA:B列に表示します。
一番最初のShapeを調べてますが、名前で指定する場合はますが、
Set sh = ActiveSheet.Shapes(1)

Set sh = ActiveSheet.Shapes("フリーフォーム名")
に変えてください。


Sub sample()
Dim sh As Shape
Dim i As Integer
Set sh = ActiveSheet.Shapes(1)
'Set sh = ActiveSheet.Shapes("フリーフォーム 1")
If sh.Type = msoFreeform Then
Range("A1:B" & UBound(sh.Vertices)) = sh.Vertices
End If
End Sub

フリーフォームのX座標とY座標をA:B列に表示します。...

  • アバター

    質問者

    ID非公開さん

    2020/1/2510:41:34

    ありがとうございます!
    見事できました。

    質問なのですが、
    これを、「選択したフリーフォーム」で実行するには、どのようにすればよいですか?

  • その他の返信を表示

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

アバター

質問した人からのコメント

2020/1/26 13:25:14

本当に親切で的確、迅速な解答ありがとうございます。
おかげで、求めていたものを作ることができました。
何度も重ね重ねの質問すみませんでした。
本当にありがとうございました。

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる