VBA Shapeを使って矢印付き線を引く Shapeを使って線を引く Sub test() ' Shapeを使って線を引く Dim rngStart As Range, rngEnd As Range Dim BX As Single, BY As Single, EX As Single, EY As Single ' 線(shape)配置基準セル Set rngStart = Range("B5") Set rngEnd = Range("F5") ' セルのLeft、Top、Widthプロパティを利用して位置特定 BX = rngStart.Left BY = rngStart.Top EX = rngEnd.Left + rngEnd.Width EY = rngEnd.Top ' 直線 ActiveSheet.Shapes.AddLine BX, BY + 10, EX, EY +10 End Sub Sub test2() ' Shapeを使って矢印付き線を引く Dim rngStart As Range, rngEnd As Range Dim BX As Single, BY As Single, EX As Single, EY As Single ' 線(shape)配置基準セル Set rngStart = Range("B5") Set rngEnd = Range("F6") ' セルのLeft、Top、Widthプロパティを利用して位置特定 BX = rngStart.Left BY = rngStart.Top EX = rngEnd.Left + rngEnd.Width EY = rngEnd.Top ' 矢印つき線(赤色・太さ1.5ポイント) With ActiveSheet.Shapes.AddLine(BX, BY + 20, EX, EY + 20).Line .ForeColor.RGB = vbRed .Weight = 1.5 .EndArrowheadStyle = msoArrowheadTriangle End With End Sub 実行結果 ― ― ― ― ― ― ― ― ― ― → Excel VBA基礎入門もくじ へ戻る 参考記事 『VBA シェイプを一括削除』 シェイプを一括削除 Sub test() ’ シート上のシェイプを一括削除 ActiveSheet.DrawingObjects.Delete …ameblo.jp 『VBA 複数列に数式をまとめて入力』よくある生徒の5科目成績計算用の表ですが、合計点、平均点、順位を一遍に入力する方法を紹介します。 複数列に数式をまとめて入力 合計点G3に入力する数式 =S…ameblo.jp 『VBA 配列数式の入力』 配列数式の入力 Sub test1() ' 各行の金額 Range("D4:D23") = "=C4*B4" ' 配列数式による…ameblo.jp 『VBA セル数式のコピペ』 セル数式のコピペ 絶対参照 Sub test1() ’ セル数式のコピペ Range("D4") = "=C4*B4" ' 絶対参照 D4と同…ameblo.jp 『VBA 最終行・列の取得』For文を使う際、最終行を自動取得できたら、毎回いちいち画面で確認必要がなくなります。今日は、最終行・列の自動取得方法を見てみましょう。 最終行(.End(x…ameblo.jp 『VBA セルに数式を入力・取得』 セルに数式を入力する Valueプロパティによる設定 Sub test1() Range("G3").Value = "=SUM(B3:F3)" …ameblo.jp 『VBA 連続データの作成 AutoFillメソッド』 連続データの作成 AutoFillメソッド 構文Range.AutoFill(Destination, Type) Sub test1() ’ 12ヶ…ameblo.jp 『VBA セル選択範囲の変更 Resizeプロパティ』 セル選択範囲の変更 Resize 構文Range.Resize(RowSize, ColumnSize)日本語訳Rangeオブジェクト. Resize(変…ameblo.jp 『VBA セル入力規則の設定(Validation)』 セル入力規則の設定(Validation) 構文Validation.Add(Type, AlertStyle, Operator, Formula…ameblo.jp
『VBA 複数列に数式をまとめて入力』よくある生徒の5科目成績計算用の表ですが、合計点、平均点、順位を一遍に入力する方法を紹介します。 複数列に数式をまとめて入力 合計点G3に入力する数式 =S…ameblo.jp
『VBA 最終行・列の取得』For文を使う際、最終行を自動取得できたら、毎回いちいち画面で確認必要がなくなります。今日は、最終行・列の自動取得方法を見てみましょう。 最終行(.End(x…ameblo.jp
『VBA セルに数式を入力・取得』 セルに数式を入力する Valueプロパティによる設定 Sub test1() Range("G3").Value = "=SUM(B3:F3)" …ameblo.jp
『VBA 連続データの作成 AutoFillメソッド』 連続データの作成 AutoFillメソッド 構文Range.AutoFill(Destination, Type) Sub test1() ’ 12ヶ…ameblo.jp
『VBA セル選択範囲の変更 Resizeプロパティ』 セル選択範囲の変更 Resize 構文Range.Resize(RowSize, ColumnSize)日本語訳Rangeオブジェクト. Resize(変…ameblo.jp
『VBA セル入力規則の設定(Validation)』 セル入力規則の設定(Validation) 構文Validation.Add(Type, AlertStyle, Operator, Formula…ameblo.jp