セルの各種塗りつぶしスタイルの設定、セル境界線のカスタマイズ、スプレッドシートのフォントの設定などのアクションを実行することで、ワークシートにスタイリングを適用できます。
IRangeインタフェースのInteriorプロパティを使用すると、セルの塗りつぶしスタイルを設定できます。セル背景には、単色塗りつぶし、パターン塗りつぶし、グラデーション塗りつぶしの 3 種類があります。
IInteriorインタフェースのPatternプロパティを設定すると、セルの塗りつぶしスタイルを単色に指定できます。
単色塗りつぶしを設定する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//B5の単色塗りつぶし worksheet.Range["B5"].Interior.Pattern = Pattern.Solid; worksheet.Range["B5"].Interior.Color = Color.FromArgb(255, 0, 255); |
セルの塗りつぶしスタイルを設定した後に、セルの背景色も変更する場合は、このドキュメントの「色の設定」を参照してください。
Interior インタフェースの Pattern プロパティを有効なパターンタイプの 1 つに設定することで、セルにパターン塗りつぶしを実行できます。
パターン塗りつぶしも、背景色と前景色の 2 つの部分で構成されています。
IInteriorインタフェースのColor、ColorIndex、ThemeColor、TintAndShadeのいずれかのプロパティを使用して、背景色を設定できます。また、PatternColor、PatternColorIndex、PatternThemeColor、PatternTintAndShadeのいずれかのプロパティを使用して、前景色を設定することもできます。
パターン塗りつぶしを設定する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//A1のパターン塗りつぶし worksheet.Range["A1"].Interior.Pattern = Pattern.LightDown; worksheet.Range["A1"].Interior.Color = Color.FromArgb(255, 0, 255); worksheet.Range["A1"].Interior.PatternColorIndex = 5; |
IInteriorインタフェースのGradientプロパティを使用して、セルにグラデーション塗りつぶしを実行できます。
グラデーション塗りつぶしには、直線グラデーション塗りつぶしと四角形グラデーション塗りつぶしの 2 種類があります。
直線グラデーション塗りつぶし
直線グラデーション塗りつぶしの設定には、ILinearGradientインタフェースのプロパティとメソッドを使用します。
直線グラデーション塗りつぶしを設定する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//C1のグラデーション塗りつぶし worksheet.Range["C1"].Interior.Pattern = Pattern.LinearGradient; (worksheet.Range["C1"].Interior.Gradient as ILinearGradient).ColorStops[0].Color = Color.FromArgb(255, 0, 0); (worksheet.Range["C1"].Interior.Gradient as ILinearGradient).ColorStops[1].Color = Color.FromArgb(255, 255, 0); (worksheet.Range["C1"].Interior.Gradient as ILinearGradient).Degree = 90; |
四角形グラデーション塗りつぶし
また、四角形グラデーション塗りつぶしの設定には、IRectangularGradientインタフェースのプロパティとメソッドを使用します。
四角形グラデーション塗りつぶしを設定する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//E1の四角形グラデーションの塗りつぶし worksheet.Range["E1"].Interior.Pattern = Pattern.RectangularGradient; (worksheet.Range["E1"].Interior.Gradient as IRectangularGradient).ColorStops[0].Color = Color.FromArgb(255, 0, 0); (worksheet.Range["E1"].Interior.Gradient as IRectangularGradient).ColorStops[1].Color = Color.FromArgb(0, 255, 0); (worksheet.Range["E1"].Interior.Gradient as IRectangularGradient).Bottom = 0.2; (worksheet.Range["E1"].Interior.Gradient as IRectangularGradient).Right = 0.3; (worksheet.Range["E1"].Interior.Gradient as IRectangularGradient).Top = 0.4; (worksheet.Range["E1"].Interior.Gradient as IRectangularGradient).Left = 0.5; |
ワークシートのフォントは、IRangeインタフェースのFontプロパティを使用してカスタマイズできます。
ワークシートのフォントスタイルを設定する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//フォントを設定します worksheet.Range["A1"].Value = "GcExcel"; worksheet.Range["A1"].Font.ThemeColor = ThemeColor.Accent1; worksheet.Range["A1"].Font.TintAndShade = -0.5; worksheet.Range["A1"].Font.ThemeFont = ThemeFont.Major; worksheet.Range["A1"].Font.Bold = true; worksheet.Range["A1"].Font.Size = 20; worksheet.Range["A1"].Font.Strikethrough = true; |
ワークシートの境界線は、IRangeインタフェースのBordersプロパティを使用してカスタマイズできます。
ワークシート内の境界線を設定する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//境界線を設定します worksheet.Range["A1:B5"].Borders.LineStyle = BorderLineStyle.DashDot; worksheet.Range["A1:B5"].Borders.ThemeColor = ThemeColor.Accent1; worksheet.Range["A1:B5"].Borders[BordersIndex.EdgeRight].LineStyle = BorderLineStyle.Double; worksheet.Range["A1:B5"].Borders[BordersIndex.EdgeRight].ThemeColor = ThemeColor.Accent2; worksheet.Range["A1:B5"].Borders[BordersIndex.DiagonalDown].LineStyle = BorderLineStyle.Double; worksheet.Range["A1:B5"].Borders[BordersIndex.DiagonalDown].ThemeColor = ThemeColor.Accent5; |
ワークシート内の数値書式は、IRangeインタフェースのNumberFormatプロパティを使用して設定できます。
ワークシート内の数値書式を設定する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//数値書式を設定します worksheet.Range["A5"].Value = 12; worksheet.Range["A5"].NumberFormat = "$#,##0.00"; |
ワークシートの配置のカスタマイズには、IRangeインタフェースのHorizontalAlignmentプロパティ、VerticalAlignmentプロパティ、AddIndentプロパティ、およびReadingOrderプロパティのいずれかを使用します。
ワークシート内の配置を設定する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//配置を設定します worksheet.Range["B8"].HorizontalAlignment = HorizontalAlignment.Distributed; worksheet.Range["B8"].AddIndent = true; worksheet.Range["B8"].VerticalAlignment = VerticalAlignment.Top; worksheet.Range["B8"].ReadingOrder = ReadingOrder.RightToLeft; |
ワークシートの保護は、IRangeインタフェースのFormulaHiddenプロパティおよびLockedプロパティを使用して設定できます。
ワークシートの保護を設定する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
//保護を設定します worksheet.Range["C4"].Locked = true; worksheet.Range["C4"].FormulaHidden = true; |