Comment : appliquer des styles à des plages dans les classeurs par programmationHow to: Programmatically Apply Styles to Ranges in Workbooks

Vous pouvez appliquer des styles nommés à des zones dans les classeurs.You can apply named styles to regions in workbooks. Excel fournit différents styles prédéfinis.Excel supplies a number of predefined styles.

S’applique à : Les informations contenues dans cette rubrique s’appliquent aux projets de niveau document et aux projets de compléments VSTO pour Excel.Applies to: The information in this topic applies to document-level projects and VSTO add-in projects for Excel. Pour plus d’informations, consultez Fonctionnalités disponibles par type d’application et de projet Office.For more information, see Features Available by Office Application and Project Type.

La boîte de dialogue Format de cellule affiche toutes les options que vous pouvez utiliser pour formater des cellules, et chacune de ces options est disponible à partir de votre code.The Format Cells dialog box displays all the options you can use to format cells, and each of these options is available from your code. Pour afficher cette boîte de dialogue dans Excel, cliquez sur Cellules dans le menu Format .To display this dialog box in Excel, click Cells on the Format menu.

Pour appliquer un style à une plage nommée dans une personnalisation au niveau du documentTo apply a style to a named range in a document-level customization

  1. Créez un style et définissez ses attributs.Create a new style and set its attributes.

    Excel.Style style = Globals.ThisWorkbook.Styles.Add("NewStyle");
    
    style.Font.Name = "Verdana";
    style.Font.Size = 12;
    style.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red);
    style.Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Gray);
    style.Interior.Pattern = Excel.XlPattern.xlPatternSolid;
    
    Dim style As Excel.Style = Globals.ThisWorkbook.Styles.Add("NewStyle")
    
    style.Font.Name = "Verdana"
    style.Font.Size = 12
    style.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red)
    style.Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Gray)
    style.Interior.Pattern = Excel.XlPattern.xlPatternSolid
    
  2. Créez un contrôle NamedRange, affectez-lui du texte, puis appliquez le nouveau style.Create a NamedRange control, assign text to it, and then apply the new style. Ce code doit être placé dans une classe Sheet et non pas dans la classe ThisWorkbook .This code must be placed in a sheet class, not in the ThisWorkbook class.

    Microsoft.Office.Tools.Excel.NamedRange rangeStyles =
        this.Controls.AddNamedRange(this.Range["A1"], "rangeStyles");
    
    rangeStyles.Value2 = "'Style Test";
    rangeStyles.Style = "NewStyle";
    rangeStyles.Columns.AutoFit();
    
    Dim rangeStyles As Microsoft.Office.Tools.Excel.NamedRange = _
        Me.Controls.AddNamedRange(Me.Range("A1"), "rangeStyles")
    
    rangeStyles.Value2 = "'Style Test"
    rangeStyles.Style = "NewStyle"
    rangeStyles.Columns.AutoFit()
    

Pour supprimer un style d'une plage nommée dans une personnalisation au niveau du documentTo clear a style from a named range in a document-level customization

  1. Appliquez le style Normal à la plage.Apply the Normal style to the range. Ce code doit être placé dans une classe Sheet et non pas dans la classe ThisWorkbook .This code must be placed in a sheet class, not in the ThisWorkbook class.

    this.rangeStyles.Style = "Normal";
    
    Me.rangeStyles.Style = "Normal"
    

Pour appliquer un style à une plage nommée dans un complément VSTOTo apply a style to a named range in a VSTO Add-in

  1. Créez un style et définissez ses attributs.Create a new style and set its attributes.

    Excel.Style style = this.Application.ActiveWorkbook.Styles.Add("NewStyle");
    
    style.Font.Name = "Verdana";
    style.Font.Size = 12;
    style.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red);
    style.Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Gray);
    style.Interior.Pattern = Excel.XlPattern.xlPatternSolid;
    
    Dim style As Excel.Style = Me.Application.ActiveWorkbook.Styles.Add("NewStyle")
    
    style.Font.Name = "Verdana"
    style.Font.Size = 12
    style.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red)
    style.Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Gray)
    style.Interior.Pattern = Excel.XlPattern.xlPatternSolid
    
  2. Créez Range, affectez-lui du texte, puis appliquez le nouveau style.Create a Range, assign text to it, and then apply the new style.

    Excel.Range rangeStyles = this.Application.get_Range("A1");
    
    rangeStyles.Value2 = "'Style Test";
    rangeStyles.Style = "NewStyle";
    rangeStyles.Columns.AutoFit();
    
    Dim rangeStyles As Excel.Range = Me.Application.Range("A1")
    
    rangeStyles.Value2 = "'Style Test"
    rangeStyles.Style = "NewStyle"
    rangeStyles.Columns.AutoFit()
    

Pour effacer un style d’une plage nommée dans un complément VSTOTo clear a style from a named range in an VSTO Add-in

  1. Appliquez le style Normal à la plage.Apply the Normal style to the range.

    Excel.Range rng = this.Application.get_Range("A1");
    rng.Style = "Normal";
    
    Dim rng As Excel.Range = Me.Application.Range("A1")
    rng.Style = "Normal"
    

Voir aussiSee Also

Utilisation des plages Working with Ranges
NamedRange (contrôle) NamedRange Control
Accès global aux objets dans les projets Office Global Access to Objects in Office Projects
Paramètres optionnels dans les solutions OfficeOptional Parameters in Office Solutions