Nasıl kullanılır: Seçilen hücreleri içeren çalışma sayfası satırlarında biçimlendirmeyi program aracılığıyla değiştirme

Seçili hücreyi içeren bir satırın tamamının yazı tipini, metnin kalın olacak şekilde değiştirebilirsiniz.

Uygulama hedefi: Bu konudaki bilgiler, - Excel için belge düzeyi projelerine ve VSTO eklentisi - projelerine yöneliktir. Daha fazla bilgi için bkz. Office uygulaması ve proje türü tarafından kullanılabilen özellikler.

Geçerli satırı kalın ve daha önce kalın olan satırı normal yapmak için

  1. Daha önce seçilen satırı izlemek için bir statik değişken bildirin.

    static int previousRow = 0;
    
    Static previousRow As Integer = 0
    
  2. özelliğini kullanarak geçerli hücreye başvuru ActiveCell alma.

    Excel.Range currentCell = this.Application.ActiveCell;
    
    Dim currentCell As Excel.Range = Me.Application.ActiveCell
    
  3. Etkin hücrenin özelliğini kullanarak geçerli EntireRow satıra kalın stil uygulama.

    currentCell.EntireRow.Font.Bold = true;
    
    currentCell.EntireRow.Font.Bold = True
    
  4. geçerli değerinin previousRow 0 olduğundan emin olur. 0 (sıfır), bu kod aracılığıyla ilk kez olduğunu gösterir.

    if (previousRow != 0)
    
    If previousRow <> 0 Then
    
  5. Geçerli satırın önceki satırdan farklı olduğundan emin olmak.

    if (currentCell.Row != previousRow)
    
    If currentCell.Row <> previousRow Then
    
  6. Daha önce seçilmiş olan satırı temsil eden bir aralık başvurusu alın ve bu satırı kalın olmayacak şekilde ayarlayın.

    Excel.Range rng = (Excel.Range)ws.Rows[previousRow];
    rng.EntireRow.Font.Bold = false;
    
    Dim rng As Excel.Range = DirectCast(ws.Rows(previousRow), Excel.Range)
    rng.EntireRow.Font.Bold = False
    
  7. Geçerli satırı bir sonraki geçişte önceki satır olacak şekilde depolar.

    previousRow = currentCell.Row;
    
    previousRow = currentCell.Row
    

    Aşağıdaki örnek, tam yöntemini gösterir.

Örnek

// 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];
            rng.EntireRow.Font.Bold = false;
        }

    // Store the new row number for the next pass.
    previousRow = currentCell.Row;
}
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

Ayrıca bkz.