Comment : modifier la mise en forme des lignes de feuille de calcul contenant des cellules sélectionnées
Mise à jour : novembre 2007
S'applique à |
---|
Les informations de cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et versions de Microsoft Office spécifiés. Type de projet
Version de Microsoft Office
Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet. |
Vous pouvez modifier la police d'une ligne entière contenant une cellule sélectionnée, de manière à ce que le texte soit en gras.
Pour mettre la ligne active en gras et faire passer en style normal la ligne précédente
Déclarez une variable statique pour garder une trace de la ligne précédemment sélectionnée.
Static previousRow As Integer = 0
static int previousRow = 0;
Récupérez une référence à la cellule active à l'aide de la propriété ActiveCell.
Dim currentCell As Excel.Range = Me.Application.ActiveCell
Excel.Range currentCell = this.Application.ActiveCell;
Mettez la ligne active en gras à l'aide de la propriété EntireRow de la cellule active.
currentCell.EntireRow.Font.Bold = True
currentCell.EntireRow.Font.Bold = true;
Veillez à ce que la valeur actuelle de previousRow ne soit pas 0, ce qui indique que ce n'est pas la première application de ce code.
If previousRow <> 0 Then
if (previousRow != 0)
Vérifiez que la ligne actuelle est différente de la précédente.
If currentCell.Row <> previousRow Then
if (currentCell.Row != previousRow)
Récupérez une référence à une plage représentant la ligne précédemment sélectionnée et définissez-la pour qu'elle ne soit pas en gras.
Dim rng As Excel.Range = DirectCast(ws.Rows(previousRow), Excel.Range) rng.EntireRow.Font.Bold = False
Excel.Range rng = (Excel.Range)ws.Rows[previousRow, missing]; rng.EntireRow.Font.Bold = false;
Stockez la ligne actuelle pour qu'elle devienne la ligne précédente pour le test suivant.
previousRow = currentCell.Row
previousRow = currentCell.Row;
L'exemple suivant illustre la méthode complète.
Exemple
Private Sub BoldCurrentRow(ByVal ws As Excel.Worksheet)
' Keep track of the previously bolded row.
Static previousRow As Integer = 0
' Work with the current active cell.
Dim currentCell As Excel.Range = Me.Application.ActiveCell
' Bold the current row.
currentCell.EntireRow.Font.Bold = True
' If a pass has been done previously, make the old row not bold.
' Make sure previousRow is not 0 (otherwise this is your first pass through).
If previousRow <> 0 Then
' Make sure the current row is not the same as the previous row.
If currentCell.Row <> previousRow Then
Dim rng As Excel.Range = DirectCast(ws.Rows(previousRow), Excel.Range)
rng.EntireRow.Font.Bold = False
End If
End If
' Store the new row number for the next pass.
previousRow = currentCell.Row
End Sub
// Keep track of the previously bolded row.
static int previousRow = 0;
private void BoldCurrentRow(Excel.Worksheet ws)
{
// Work with the current active cell.
Excel.Range currentCell = this.Application.ActiveCell;
// Bold the current row.
currentCell.EntireRow.Font.Bold = true;
// If a pass has been done previously, make the old row not bold.
// Make sure previousRow is not 0 (otherwise this is your first pass through).
if (previousRow != 0)
// Make sure the current row is not the same as the previous row.
if (currentCell.Row != previousRow)
{
Excel.Range rng = (Excel.Range)ws.Rows[previousRow, missing];
rng.EntireRow.Font.Bold = false;
}
// Store the new row number for the next pass.
previousRow = currentCell.Row;
}
Voir aussi
Tâches
Comment : appliquer des styles à des plages dans les classeurs
Comment : copier des données et une mise en forme d'une feuille de calcul à l'autre
Concepts
Utilisation des feuilles de calcul
Fonctionnement des paramètres optionnels dans les solutions Office