重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

マクロ初心者です。ご教示願います。

エクセルのマクロで選択した任意のセルに●→を引くマクロを組みましたが、
線の太さと、色を変えるコードをどこにどう入れたらいのか教えてください。

Sub 線を引く()
Dim TP, LF, WD
TP = Selection.Top + (Selection.Height / 2)
LF = Selection.Left
WD = Selection.Width


ActiveSheet.Shapes.AddShape(msoShapeOval, LF, TP - 3, 6, 6).Select
ActiveSheet.Shapes.AddLine(LF + 6, TP, LF + WD, TP).Select

A 回答 (2件)

たとえばExcel2003までなどを使っているなら,新しいマクロの記録で「線を引いて希望の太さに変えて色を付けてみる」などを録ってみると,そのまま流用できるサンプルマクロが手に入ります。



作成例:
Sub 線を引く()
Dim TP, LF, WD
TP = Selection.Top + (Selection.Height / 2)
LF = Selection.Left
WD = Selection.Width


ActiveSheet.Shapes.AddShape(msoShapeOval, LF, TP - 3, 6, 6).Select
ActiveSheet.Shapes.AddLine(LF + 6, TP, LF + WD, TP).Select

’ここから
Selection.ShapeRange.Line.Weight = 1.5
Selection.ShapeRange.Line.ForeColor.SchemeColor = 10
End Sub



実はご質問の線だけじゃなくて,たとえば○の太さや線の色,塗り色なども変えたかった(希望の色・希望の太さに)場合も,同様に記録マクロにとって参考にしてみてください。
    • good
    • 0

ActiveSheet.Shapes.AddShape(msoShapeOval, LF, TP - 3, 6, 6).Select


で、Selectされているから、この後に、
Selection.ShapeRange.Line.ForeColor.SchemeColor = 10
Selection.ShapeRange.Line.Weight = 0.75
などを入れる。

ActiveSheet.Shapes.AddLine(LF + 6, TP, LF + WD, TP).Select
についても同様。

なお、どんなプロパティがあるかは、図形を書いてマクロを記録すればわかる。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!