Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1960to1964
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bedingte Formatierung bei Einfügen Zeile in ListObject

Bedingte Formatierung bei Einfügen Zeile in ListObject
30.01.2024 10:39:53
FranziskusV
Hallo,
Ich bin leider kein Held mit VBA, daher würde ich mich über Hilfe freuen.
Ich füge über folgenden Code in eine intelligente Tabelle eine weitere Zeile ein. Ich möchte gerne hierbei auch die bedingte Formatierung der darüber befindlichen Zeile übernehmen. Weiss jemand wie ich das anpassen kann ?

Private Sub CommandButton3_Click()

'Fügt eine Blattzeile ein so dass die intelligente Tabelle 'Monatlicher Stand' um eine Zeile nach unten erweitert wird.
Dim ws As Worksheet
Dim meineTabelle As ListObject
Dim letzteZeile As Long
Dim blattZeilennummer As Long


Set ws = Me
Set meineTabelle = ws.ListObjects("TbMonatlicherStand") '!!! Namen der intelligenten Tabelle anpassen

' Ermittle die letzte Zeile in der Tabelle
letzteZeile = meineTabelle.ListRows.Count

' Überprüfe, ob die Tabelle Zeilen hat
If letzteZeile > 0 Then
' Ermittle die Blattzeilennummer der letzten Zeile
blattZeilennummer = meineTabelle.ListRows(letzteZeile).Range.row

' Springe eine Zeile tiefer und füge eine neue Zeile ein
ws.Rows(blattZeilennummer + 1).Insert Shift:=xlDown

' Jetzt kannst du mit der neu eingefügten Zeile arbeiten
MsgBox "Eine Zeile für eine weitere Übernahme wurde eingefügt"
Else
MsgBox "Die Tabelle hat keine Zeilen."
End If
End Sub


LG, FranziskusV

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
meineTabelle.Resize ....
30.01.2024 17:52:24
NoNet
Hallo Franziskus,

die Bedingte Formatierung der TABELLE wird automatisch übernommen, wenn Du eine weitere Zeile unten anfügst.
Das Problem in Deinem Code ist, dass er nur eine neue Leerzeile unterhalb der Tabelle einfügt, diese jedoch nicht wirklich vergrößert,

Folgende Codezeile könnte das Problem lösen :

 meineTabelle.Resize meineTabelle.Range.Resize(letzteZeile + 2)


Diese Codezeile muss direkt unterhalb dieser Zeile eingefügt werden :
ws.Rows(blattZeilennummer + 1).Insert Shift:=xlDown


Salut, NoNet
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige