[[20150929110508]] 『エクセルで三角形を作図』(masa) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『エクセルで三角形を作図』(masa)

工事作業帯をエクセルで作成したいと考えています。

そこで、三角形(直角三角形)になる部分ですが底辺および高さの値を入力すれば
自動で斜辺がひかれるようにしたいと考えています。

ご教授よろしくおねがいします。

< 使用 Excel:Excel2013、使用 OS:Windows7 >


 CADアプリケーションを使えば簡単にできると思いますが・・・。

 お望みのことはマクロになると思います。
(カリーニン) 2015/09/29(火) 11:16

 オートシェイプには三角形がありますので、
 Height、WidthとTop、Leftを指定してやれば指定の位置に
 指定のサイズの三角形を配置できます。
(カリーニン) 2015/09/29(火) 11:19

 VBAでオートシェイプを作成するときの参考HPです。

http://www.happy2-island.com/excelsmile/smile03/capter01202.shtml

 バージョンによって各種数値が違ってくる可能性がありますので注意が必要です。

 三角形です。

http://www.excel-excel.com/tips/shape/shp_52.html

 オートシェイプの三角形には↓の二種類ありますので、使い分けてください。

 二等辺三角形
 直角三角形
(カリーニン) 2015/09/29(火) 11:26

フリーフォームで三角形を描いてしまう例。

 Sub test()
    Dim iX(2) As Single
    Dim iY(2) As Single
    Dim iTop As Single
    Dim iLeft As Single
    Dim iBottom As Single
    Dim iHeight As Single

    iTop = 50: iLeft = 100: iBottom = 200: iHeight = 100

    iX(0) = iLeft: iY(0) = iTop
    iX(1) = iLeft + iBottom / 2: iY(1) = iTop + iHeight
    iX(2) = iLeft - iBottom / 2: iY(2) = iTop + iHeight

    With ActiveSheet.Shapes.BuildFreeform(msoEditingCorner, iX(0), iY(0))
        .AddNodes msoSegmentLine, msoEditingAuto, iX(1), iY(1)
        .AddNodes msoSegmentLine, msoEditingAuto, iX(2), iY(2)
        .AddNodes msoSegmentLine, msoEditingAuto, iX(0), iY(0)
        With .ConvertToShape
            .Line.ForeColor.RGB = RGB(255, 0, 0)
            .Line.Weight = 0.5
            .Fill.ForeColor.RGB = RGB(255, 192, 192)
            .Fill.Visible = msoTrue
        End With
    End With
 End Sub
(???) 2015/09/29(火) 11:48

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.