お疲れ様です。
VB.NETでEXCELの罫線引き、外枠だけ太線に指定したいのですが、
どうるればよいのでしょうか?いろいろ調べまして、指定した範囲に
罫線を引くところまではできたのですが・・・(下記コード)。
'入力された範囲に罫線を引く
xlSheet.Range(xlSheet.Cells(11, 1), xlSheet.Cells(11 + shrRow - 1, 15)).Borders.LineStyle = Excel.XlLineStyle.xlContinuous
お忙しいところ申し訳ありませんが、ご享受よろしくお願いいたします。
線種の指定にはLineStyleプロパティで指定しますが、
罫線の太さは、Weightプロパティで指定します。この場合は、
〜.Weight = Excel.XlBorderWeight.xlHairline '極細線
〜.Weight = Excel.XlBorderWeight.xlThin '細線
〜.Weight = Excel.XlBorderWeight.xlMedium '中太線
〜.Weight = Excel.XlBorderWeight.xlThick '太線
という感じですね。
LineStyleとWeightの組み合わせによって、罫線種が指定できます。
罫線の指定については、下記を参照してみてください。
(下記はVBA/VBScript向けに書いた資料ですが、VB.NETでも基本は一緒です)
http://www.ocv.ne.jp/~oratorio/windev/Excel/ExcelLine.pdf
http://www.ocv.ne.jp/~oratorio/windev/Excel/ExcelLine.xls
ただし、.NETでは、Excelのオブジェクトを『ReleaseComObject』で
解放しなければならないので、呼出し手順は冗長的になります。
> xlSheet.Range(xlSheet.Cells(11, 1), xlSheet.Cells(11 + shrRow - 1, 15)).Borders.LineStyle = Excel.XlLineStyle.xlContinuous
VBA/VBS/VB6であれば、そのような書き方で良いのですが、
VB.NETではそのような書き方をしてはいけません。
そのコードでも、罫線は一応引かれますが、「ReleaseComObject」での
解放が行われていませんので、そのままだと、オブジェクトが終了せず、
Excelのプロセスが非表示で残ってしまう可能性があります。
http://www.bcap.co.jp/hanafusa/bbs/wforum.cgi?mode=allread&no=1660
無事解決いたしました。お忙しいなかご指導ありがとうございます。
ツイート | ![]() |