Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Wenn automatische Tabellenerweiterung, dann
#1
Moin in die Runde:

Wie würde eine VBA-Zeile aussehen, die sagt, dass eine bestimmte Aktion passieren soll, wenn es eine automatische Tabellenerweiterung gibt? Geht das überhaupt?
Antworten Top
#2
Hallöchen,

Also, mit automatisch geht es nicht um das Hinzufügen einer Zeile oder Spalte per Ein- oder Anfügen oder das Löschen, sondern um Änderung bei einer Eingabe. Korrekt?

Du könntest bei einer Eingabe, also Worksheet_Change, prüfen, ob sich die Tabellengröße (ANzahl zeilen oder Spalten) geändert hat. Du müsstest Dir dazu nur die Größe irgendwie merken, z.B. in einer Variable die Du beim Workbook_Open das erste mal füllst, oder als Wert in einer Zelle, oder ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#3
(18.12.2021, 17:29)schauan schrieb: Hallöchen,

Also, mit automatisch geht es nicht um das Hinzufügen einer Zeile oder Spalte per Ein- oder Anfügen oder das Löschen, sondern um Änderung bei einer Eingabe. Korrekt?

Du könntest bei einer Eingabe, also Worksheet_Change, prüfen, ob sich die Tabellengröße (ANzahl zeilen oder Spalten) geändert hat. Du müsstest Dir dazu nur die Größe irgendwie merken, z.B. in einer Variable die Du beim Workbook_Open das erste mal füllst, oder als Wert in einer Zelle, oder ...

Richtig, wenn ich unter der Tabelle neue Daten eingebe, erweitert Excel die Tabelle halt automatisch. Immer wenn das passiert, möchte ich, dass etwas gewisses passiert.

Danke schon mal für deinen Tipp. Ich lasse mir das gerade mal durch den Kopf gehen, wie man das gestalten könnte. Bin da noch ein wenig ratlos. Wenn du da irgendwie konkretere Vorstellungen hast, würde ich mich natürlich sehr freuen!
Antworten Top
#4
Hallöchen,

im Prinzip so. Bea. dass hier Zelle C1 zum Speichern der Zeilenzahl verwendet wir

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  'Variablendeklarationen
  Dim objWSh As Worksheet, objLOb As ListObject, lRows As Long
  'Blatt dem Objekt zuweisen
  Set objWSh = ActiveWorkbook.Worksheets("Tabelle1")
  'Tabelle dem Objekt zuweisen
  Set objLOb = objWSh.ListObjects("Tabelle1")
  'Anzahl Zeilen ermitteln
  lRows = objLOb.DataBodyRange.Rows.Count
  'Wenn die Anzahl verschieden ist vom hinterlegten Wert, dann
  If Cells(1, 3).Value <> lRows Then
    'Meldung ausgeben
    MsgBox "alt: " & Cells(1, 3).Value & vbLf & "neu: " & lRows
  'Eede Wenn die Anzahl verschieden ist vom hinterlegten Wert, dann
  End If
  'Zeilenzahl in Zelle C1 merken
  Cells(1, 3).Value = lRows
End Sub
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste