Office: (Office 2016) Jeweils unterschiedliche Anzahl von Zeilen abwechselnd anders einfärben

Helfe beim Thema Jeweils unterschiedliche Anzahl von Zeilen abwechselnd anders einfärben in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo und guten Tag, ich habe eine Excel-Tabelle, in der eine jeweils unterschiedliche Anzahl von Zeilen abwechselnd anders eingefärbt werden soll.... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von BN_62, 30. September 2020.

  1. BN_62 User

    Jeweils unterschiedliche Anzahl von Zeilen abwechselnd anders einfärben


    Hallo und guten Tag,

    ich habe eine Excel-Tabelle, in der eine jeweils unterschiedliche Anzahl von Zeilen abwechselnd anders eingefärbt werden soll.

    Hier ein Screenshot, wie es am Ende aussehen soll:

    Jeweils unterschiedliche Anzahl von Zeilen abwechselnd anders einfärben Tabelle einfärben.jpg

    Die zu färbenden Zeilen haben einen unterschiedlichen Umfang, wie man sieht.

    Ich habe bereits folgenden Code, der grds. auch funktioniert:

    Code:
    Sub ColorRows()
        Dim cell As Range, color1 As Variant, color2 As Variant, rowColor As Variant
        color1 = vbCyan
        color2 = vbWhite
        With ActiveSheet
            For Each cell In .Range("A4:A" & .Cells(Rows.Count, 1).End(xlUp).Row)
                If cell.Font.Bold Then
                    rowColor = IIf(rowColor = color1, color2, color1)
                End If
                cell.EntireRow.Interior.Color = rowColor
            Next
        End With
    End Sub
    
    Allerdings wird auch der Bereich RECHTS über die Tabelle hinaus eingefärbt.
    Es soll aber nur innerhalb der eigentlichen Tabelle gefärbt werden.

    Und... die Tabelle wird immer erweitert. Es werden also Zeilen hinzukommen.
    Das funktioniert aber mit dem obigen Code schon (denke ich doch) ;-)

    Was muss ich am Code ändern, damit auch am rechten Rand der Tabelle Schluss ist mit einfärben?

    Danke und Gruß,
    BN_62
     
  2. Exl121150 Erfahrener User
    Hallo,

    folgendes Makro färbt den Hintergrund der ersten beiden Spalten und fügt Rahmenlinien ein so, wie in deiner Grafik dargestellt:
    Code:
    Option Explicit
    
    Sub ColorRows()
        Dim rgZelle As Range, color1 As Long, color2 As Long, rowColor As Long
        Dim lngZeile1 As Long, lngZeile2 As Long
        
        color1 = vbCyan: color2 = vbWhite
        rowColor = color1
        
        lngZeile1 = 0: lngZeile2 = 0
        
        With ActiveSheet
        
            For Each rgZelle In .Range("A4:A" & .Cells(Rows.Count, 1).End(xlUp).Row)
                If rgZelle.Font.Bold Then
                    rowColor = IIf(rowColor = color1, color2, color1)
                    If lngZeile2 > 0 Then
                       BereichFormatieren Range("A" & lngZeile1 & ":B" & lngZeile2), rowColor
                    End If
                    lngZeile1 = rgZelle.Row
                End If
                lngZeile2 = rgZelle.Row
            Next
            
            rowColor = IIf(rowColor = color1, color2, color1)
            BereichFormatieren Range("A" & lngZeile1 & ":B" & lngZeile2), rowColor
            
        End With
    End Sub
    
    Sub BereichFormatieren(rgBereich As Range, bgFarbe As Long)
    '
      With rgBereich
      
        .Interior.Color = bgFarbe
        
        .Borders(xlDiagonalDown).LineStyle = xlNone
        .Borders(xlDiagonalUp).LineStyle = xlNone
        
        With .Borders()
            .LineStyle = xlContinuous
            .ColorIndex = xlAutomatic
            .TintAndShade = 0
            .Weight = xlMedium
        End With
        
        With .Borders(xlInsideVertical)
            .LineStyle = xlContinuous
            .ColorIndex = xlAutomatic
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With .Borders(xlInsideHorizontal)
            .LineStyle = xlContinuous
            .ColorIndex = xlAutomatic
            .TintAndShade = 0
            .Weight = xlThin
        End With
      End With
    End Sub
    
     
    Exl121150, 30. September 2020
    #2
  3. BN_62 User
    Hallo und danke für Deine Mühe.

    Wollte Deinen Code soeben testen.
    Aber es kommt eine Fehlermeldung in Bezug auf die letzte Code-Zeile "BereichFormatieren".

    Der Fehler heißt:

    ---------------------------
    Microsoft Visual Basic for Applications
    ---------------------------
    Fehler beim Kompilieren:

    Sub oder Function nicht definiert
    ---------------------------

    Und - würde statt weiß als zweite Farbe, hier auch einfach "keine Füllung" gehen?

    Schöne Grüße,
    BN_62
     
    Zuletzt bearbeitet: 1. Oktober 2020
  4. Exl121150 Erfahrener User

    Jeweils unterschiedliche Anzahl von Zeilen abwechselnd anders einfärben

    Hallo,

    Das ist aber nur dann möglich, wenn du nur die SUB ColorRows kopiert hast, nicht aber auch die ebenfalls enthaltene SUB BereichFormatieren, denn dann ist natürlich die letztgenannte SUB nicht definiert. Diese "fehlende" SUB kommt zum Vorschein, wenn du im CODE-Fenster die vertikale Scrollleiste verschiebst - oder aber, wenn du mit dem Mauszeiger ins CODE-Fenster zeigst und gleichzeitig das Scrollrad der Maus betätigst.

    In der beiliegenden Excel-Datei habe ich dir im Arbeitsblatt "Tabelle1" zwei Buttons eingefügt, deren Funktionsweise doch wohl hinreichend klar sein dürfte.

    Auch das war im bisherigen Makro überhaupt kein Problem, wie zu sehen ist, wenn man das Makro ordnungsgemäß laufen lässt.
     
    Zuletzt bearbeitet: 2. Oktober 2020
    Exl121150, 1. Oktober 2020
    #4
Thema:

Jeweils unterschiedliche Anzahl von Zeilen abwechselnd anders einfärben

Die Seite wird geladen...
  1. Jeweils unterschiedliche Anzahl von Zeilen abwechselnd anders einfärben - Similar Threads - Jeweils unterschiedliche Anzahl

  2. Nächtigungen eines Aufenthalts auf die jeweiligen Monate aufteilen

    in Microsoft Excel Hilfe
    Nächtigungen eines Aufenthalts auf die jeweiligen Monate aufteilen: Guten Tag Ich plage mich schon seit 2 Tagen an diesem Problem. Für meine Nächigungstaxenberechnung benötige ich folgendes: Es gibt ein Aufehthalsdatum eines Gastes, zb 01.0.2023 bis 15.02.2023...
  3. Spalte gruppieren und aus den Inhalten jeweils eine Tabelle

    in Microsoft Excel Hilfe
    Spalte gruppieren und aus den Inhalten jeweils eine Tabelle: Hallo zusammen, ich habe eine große Abrechnungstabelle mit mehrere Spalten. Ich habe eine Spalte "Kontonummer" und mehrere Kontonummern und Rechnungen dazu in den Zeilen. Z.B. habe ich...
  4. Formelerweiterung - Jeweils 6 Zeilen überspringen

    in Microsoft Excel Hilfe
    Formelerweiterung - Jeweils 6 Zeilen überspringen: Hallo ihr Lieben, ich bin neu hier im Forum und habe auch schon gleiche eine Frage. Seit einigen Stunden beschäftige ich mich damit. Ich erarbeite derzeit einen Speiseplan. Hierbei arbeite ich...
  5. Spalte 2 bis n jeweils in Zeilen transponieren (zur wiederholten Spalte 1)

    in Microsoft Excel Tutorials
    Spalte 2 bis n jeweils in Zeilen transponieren (zur wiederholten Spalte 1): a 1 3 5 b 2 4 6 c 7 8 9 wird mit =LET(x;A1:D3;y;SPALTEN(x)-1;z;ZEILEN(x);a;SEQUENZ(z*y;;1;1/y);HSTAPELN( INDEX(x;a;1); INDEX(x;a;REST(SEQUENZ(z*y;;y);y)+2))) zu a 1 a 3 a 5 b 2 b 4 b 6 c 7 c 8 c...
  6. Zellen per Makro in Tabelle zum jeweiligen Datum kopieren

    in Microsoft Excel Hilfe
    Zellen per Makro in Tabelle zum jeweiligen Datum kopieren: Hallo ihr Excel-Profis, ich könnte eure Hilfe gebrauchen. Ich habe eine Berechnungstabelle, die verschiedene Zellen mit Ergebnissen ausgibt. Des Weiteren habe ich 12 Blätter für die jeweiligen...
  7. Spalten Inhalt in L soll immer der jeweiligen Nummer aus B fest zugeordnet werden

    in Microsoft Excel Hilfe
    Spalten Inhalt in L soll immer der jeweiligen Nummer aus B fest zugeordnet werden: Hallo, ich habe eine Exceldateiwo ich mir auf einem Tabellenblatt aus verschiedenen anderen Blättern über sverweise Daten zusammensetze. Dann gibt es eine Spalte L in der anschließend Massnahmen...
  8. Berichtsbereiche mit jeweils anderen Abfragen füllen(Textfelder)

    in Microsoft Access Hilfe
    Berichtsbereiche mit jeweils anderen Abfragen füllen(Textfelder): Hallo Ihr lieben, seit einiger Zeit befasse ich mich damit ein Bericht zu gestalten und verzweifle gerade daran, da es irgendwie nicht so wird wie ich das gerne hätte. Also es geht um eine Art...
Schlagworte:
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden