全部で十数種類のアドインを作りました。
プログラムとしては1つですがボタンをどんどん追加して行って作りました。
適当な場所にセパレータを入れるとボタンが分類できます。
全てのアドインはCtlキーを押しながら複数の選択範囲をしたときは、その全てを処理するようにしました。
参考にしてもらえれば嬉しいです。
まず罫線関係のものです。
ボックス罫線は1と2があってそれぞれが2種類で全部で4種類になります。
ボックス罫線1は内部が破線で外周が細線のものです。
一行目の下端を破線のままか実線にするかで別れます。
ボックス罫線2は内部が細線で外周が太線のものです。
これは一行目の下端を細線のままか太線にするかで別れます。
あと右上りと右下がりの罫線(細線)があります。
最後に罫線をなくすものも作りました。
上端罫線のコードは例えば次のようになります。
//上端罫線を引く
r.Borders.get_Item(XlBordersIndex.xlEdgeTop).LineStyle = XlLineStyle.xlContinuous;
r.Borders.get_Item(XlBordersIndex.xlEdgeTop).Weight = XlBorderWeight.xlThin;
この右辺のXlLineStyle.の後xlContinuousを変えると線の種類が変わります。
この候補はドット[.]を打つと出てくるので適当に選びます。
またXlBorderWeight.の後xlThinを変えると線の太さが変わります。
色々試してみると面白いです。
次にセルの書式関係のものも作ってみました。
通貨形式にするもので、マイナス数値を赤で表示するか黒のままか選べます。
標準形式に戻すのも作りました。
セルの書式設定の例は次のようになります。
//セル表示形式を通貨形式に(マイナス数値赤)
r.NumberFormatLocal = "\\#,##0;[赤]\\-#,##0";
この右辺を変えるとセルの書式が買えられます。
それからセルの結合と解除です。
これは次のようにします。
//セルを結合
r.Cells.Merge();
//結合を解除
r.Cells.UnMerge();
最後は網掛け3種類と解除です。
これらは次のようになります。
//パターンを網掛け16%に
r.Interior.Pattern = XlPattern.xlPatternGray16;
右辺のxlPatternGray16を変えるとパターンを変えられます。
網掛けだけでなく塗りつぶしもできると思います。
パターンの解除は
//パターン無しに
r.Interior.Pattern = XlPattern.xlPatternNone;
とします。
Excelのマクロの記録を使ってやりたい操作をVBAで記録したものを見ればC#でもほとんど同じにできるので
色々アレンジしてもらえると思います。
最後にサンプルコードを示します。(ダウンロードしてください)
尚 MessageBox.Show を使っている場合は
using System.Windows.Forms;
を追加してください。
コメントをお書きください