
VB.NETからEXCELの背景色を変更する方法を紹介します。
他にもEXCEL操作関係の記事を記載していますので、参考にしてみてください。
VB.NET EXCEL操作 新規ブック作成
VB.NET EXCEL操作 値入力
VB.NET EXCEL操作 罫線を引く
VB.NET EXCEL操作 フィルター設定
背景色を変更する RGBで設定
背景色を変更するサンプルを紹介します。
'範囲指定
Dim range As Excel.Range = Nothing
range = sheet.Range(sheet.Cells(2, 2), sheet.Cells(4, 4))
'背景色を変更
range.Interior.Color = RGB(255, 255, 0)
解説
1~3行目:エクセルの範囲を指定
4~5行目:指定した範囲の背景色を変更
このように、RGBで色を設定することができます。
背景色を変更する Color.Index
先ほどは、RGBで色を指定していましたが、ほかにもColoIndexを利用した設定方法があるので紹介しておきます。
'範囲指定
Dim range As Excel.Range = Nothing
range = sheet.Range(sheet.Cells(2, 2), sheet.Cells(4, 4))
'背景色を変更
range.Interior.ColorIndex = 3
結果
ちなみに、ColorIndexは、57種類あります。
サンプルソース
サンプルソースを載せておきます。
Imports Microsoft.Office.Interop
Public Class frmExcel
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'EXCEL変数
Dim excelApp As New Excel.Application()
Dim excelBooks As Excel.Workbooks = excelApp.Workbooks
Dim excelBook As Excel.Workbook = excelBooks.Add()
Dim sheet As Excel.Worksheet = excelApp.Worksheets("sheet1")
Try
excelApp.Visible = False
'範囲指定
Dim range As Excel.Range = Nothing
range = sheet.Range(sheet.Cells(2, 2), sheet.Cells(4, 4))
range.Interior.ColorIndex = 3
'range.Interior.Color = RGB(255, 255, 0)
excelBook.SaveAs("D:\NewExcelBook.xlsx")
MessageBox.Show("処理完了")
Catch ex As Exception
Throw
Finally
excelApp.Quit()
Call System.Runtime.InteropServices.Marshal.ReleaseComObject(sheet)
Call System.Runtime.InteropServices.Marshal.ReleaseComObject(excelBook)
Call System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp)
End Try
End Sub
End Class
まとめ
このように、VB.NETからEXCELを操作して、背景色を設定することができます。
背景色を設定するときは、是非参考にしてみてください。