|
はじめまして。
Windows XPをつかっています。
まず、エクセルのマウスでクリックした位置にVBAで
線をひきたいのです。(斜線2本)
マクロで何本か線の開始位置を変えて試してみました。
Range("G" & sel & ":J" & (sel + 1)).Select
行がかわるため、selという変数を使っています。
この文で、線を引き始める位置を指定していると思うのですが、
ちゃんとひきたい位置に線を描かず、マクロで試したセルにしか線を描きません。
クリックしたセルに斜線を2本ひいたあと、セル下に2重線をひく処理もしていますが、その2重線は、ちゃんとマウスでクリックしたセルにひかれます。
なぜでしょうか??
うまく書けませんが、どなたか指摘お願いします。
以下にソースを記載します。
sel = ActiveCell.Row
Range("G" & sel & ":J" & (sel + 1)).Select
ActiveSheet.Shapes.AddLine(227.25, 1219.5, 314.25, 1259.25).Select
Selection.ShapeRange.Flip msoFlipHorizontal
ActiveSheet.Shapes.AddLine(265.5, 1197#, 275.25, 1204.5).Select
Range("G" & sel & ":J" & (sel + 1)).Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlDouble
.Weight = xlThick
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
|
|