Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1956to1960
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

Zwei intelligente Listen mit gleicher größe

Zwei intelligente Listen mit gleicher größe
07.01.2024 01:32:07
Ratschi
Hi.

Ich teste zur Zeit die Möglichkeiten von intelligenten Tabellen aus und arbeite damit ein paar alte Mappen um.
Jetzt wäre es wirklich sinnvoll, wenn man zwei intelligente Tabellen hat, eine so einstellen zu können, das sie jedes mal, wenn ich bei der anderen Tabelle eine zeile hinzugefügt wird, die erstgenannte automatisch eine zeile mehr bekommt. Also das die größe der zweiten Tabelle an die der ersten angepasst wird.

Gibt es da eine Möglichkeit?

Güße Markus

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zwei intelligente Listen mit gleicher größe
07.01.2024 10:02:18
Beverly
Hi Markus,

versuche es mal auf diesem Weg:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, ActiveSheet.ListObjects(1).DataBodyRange) Is Nothing Then
If ActiveSheet.ListObjects(1).ListRows.Count > ActiveSheet.ListObjects(2).ListRows.Count Then
ActiveSheet.ListObjects(2).ListRows.Add alwaysinsert:=True
End If
End If
End Sub


Bis später
Karin

Link zur Homepage: https://excel-inn.de/
Anzeige
AW: Zwei intelligente Listen mit gleicher größe
07.01.2024 15:55:39
Ratschi
Hi Karin,

Danke schonmal für die schnelle Antwort.
Schätze mal das ist über VBA. Da hab ich leider so gut wie keine erfahrung mit. Hab bisher nur mal n paar vorher generierte Makros damit bearbeitet.

Aber das was du da schreibst sieht so aus als beziehe es sich auf ein Worksheet und nicht auf eine intelligente Tabelle. In der Datei die ich bearbeite sind teilweise mehrere Tabellen auf einem Sheet. Würde gerne ne Beispieldatei hochladen aber weiß nicht wie ich die adäquat ändern kann, da das n Passwortgenerator wird.

Grüße Markus
AW: Zwei intelligente Listen mit gleicher größe
07.01.2024 16:41:20
Beverly
Hi Markus,

du hast es richtig erkannt, es ist eine Prozedur die ins Codemodul des Tabellenblattes gehört, aber er bezieht sich auf 2 intelligente Tabellen - das erkennst du an der Verwendung von Activesheet.ListObjects(). Da ich nicht weiß, wie deine intelligenten Tabellen heißen, habe ich im Code einfach ihren Index 1 und 2 angenommen - stattdessen kannst du selbstverständlich auch die Namen der beiden intelligenten Tabellen verwenden, musst ihn nur zusätzlich in "" setzen, da es sich dabei um einen String handelt.

Bis später
Karin

Link zur Homepage: https://excel-inn.de/
Anzeige
AW: Zwei intelligente Listen mit gleicher größe
08.01.2024 00:24:36
Ratschi
Hi Karin,

Nach einigem testen hab ichs leider immer noch nicht geschaft.
Dachte erst das liegt daran das die Tabellen auf verschiedenen Blättern sind. Hab ne neue Mappe erstellt um das zu testen hat aber auch nichts gebracht. Ich bekomme es weder zum laufen wenn die Tabellen auf verschiedenen, noch wenn die Tabellen auf dem gleichen Blatt sind.

Kann das daran liegen, dass ich mit "TAB" ne neue Zeile hinzufüge und der das nicht erkennt?

Hab die Testmappe jetzt auch mal als Beispieldatei hochgeladen

https://www.herber.de/bbs/user/165963.xlsm

Grüße Markus
Anzeige
AW: Zwei intelligente Listen mit gleicher größe
08.01.2024 11:21:42
Beverly
Hi Markus,

also deine beiden Tabellen liegen NICHT auf verschiedenen Tabellenblättern sondern im selben...
Außerdem ging aus deinem Beitrag nicht hervor, dass du die Tab-Taste verwendest - dann greift das Change-Ereignis natürlich nicht. In dem Fall müsste man das SelectionChange-Ereignis verwenden:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, ActiveSheet.ListObjects("passwoerter").DataBodyRange) Is Nothing Then
If ActiveSheet.ListObjects("passwoerter").ListRows.Count > ActiveSheet.ListObjects("firmatest").ListRows.Count Then
ActiveSheet.ListObjects("firmatest").ListRows.Add alwaysinsert:=True
End If
End If
End Sub


Falls die Tabellen doch, entgegen deiner hochgeladenen Beispielmappe, auf verschiedenen Tabellenblättern liegen sollten, dann musst du für die 2. intelligente Tabelle anstelle ActiveSheet den Namen des Blattes verwenden, also nicht ActiveSheet.ListObjects("firmatest") sondern Worksheets("Tabelle2").ListObjects("firmatest")

Bis später
Karin

Link zur Homepage: https://excel-inn.de/
Anzeige
AW: Zwei intelligente Listen mit gleicher größe
08.01.2024 18:24:34
Ratschi
Hi Karin,

Mein Fehler. Habe die Falsche Datei hochgeladen. Aber mit dem Nachtrag hats jetzt geklappt.
Ich dachte nicht dass es einen Unterschied macht, auf welche weise die Tabelle eine Zeile mehr bekommt. Da hab ich wohl einiges zu lernen. Werd demnächst mal versuchen mich da reinzufuchsen.

Danke für die perfekte Hilfe.

Grüße Markus
Erläuterung
08.01.2024 18:35:45
Beverly
Hi Markus,

das Change-Ereignis reagiert nur auf eine direkte Eingabe in eine Zelle im Tabellenblatt und der Code aus meiner 1. Antwort benutzt dieses Ereignis weil ich annahm, dass die Erweiterung der intelligenten Tabelle mittels Eingabe eines Zellinhaltes erfolgt. Die Tab-Taste ist jedoch keine direkte Eingabe im Tabellenblatt sondern wählt nur eine (nächste) Zelle an, markiert/selektiert sie also nur, weshalb das Change-Ereignis nicht ausgelöst wird sondern "nur" das SelectionChange-Ereignis, also das Zell-Markierungs-Ereignis.

Bis später
Karin

Link zur Homepage: https://excel-inn.de/
Anzeige
AW: Zwei intelligente Listen mit gleicher größe
07.01.2024 13:06:20
ralf_b
es klingt so als ob du leere Zeilen auf Vorrat einfügen willst. Das ist bei intelligenten Tabellen nicht sinnvoll.
Wenn du mehr Informationen über das warum bereitstellst, gibt es sicher eine andere Möglichkeit.
AW: Zwei intelligente Listen mit gleicher größe
08.01.2024 00:42:26
Ratschi
Hi Ralf,

Auf Vorrat nicht. Ich habe auf Tabelle zwei intelligente Tabellen. "Passwörter" in der ich Accounts eintrage die ich habe und "Daten".
Dann sind in der Mappe noch weitere Tabellen mit intelligenten Tabellen drauf, die die Werte aus den erst genannten beiden nehmen und anhand dessen Zahlen, Buchstaben und zeichen ausspucken.
Diese Werden dann in der Tabelle "Passwörter" für jeden Account als eigenes Passwort zusammengefügt.
Auf einer der weiteren Tabellen ist eine intelligente Tabelle ("Firma") die auf Grund der Tabelle "Daten", Buchstaben aus den Accountnamen zieht.

Desshalb möchte ich, dass in jedes mal, wenn ich in "Passwörter" durch "TAB" eine neue Zeile hinzufüge um einen neuen Account einzutragen, auch in "Firma" eine neue Zeile dazu kommt.

Am besten wärs natürlich, dass wenn ich eine Zeile in Passwörter entferne, das diese auch in Firma gelöscht wird. Aber ich dachte mir einen Schritt nach dem anderen.

Grüße Markus
Anzeige
AW: Zwei intelligente Listen mit gleicher größe
08.01.2024 18:26:25
ralf_b
wie beverly schon geschrieben hat, würde sowas z.b. mit dem selection change event gehen. Leider gibt es keine Trigger, die sagen "in Tabelle xy wurde eine Zeile hinzugefügt bzw. gelöscht". Sowas muß man sich dann selbst zusammenrechnen.
Ich würde dir dazu raten solche Dinge, die mehrere Tabellen betreffen, über eine Userform zu managen oder die Daten in einer Tabelle zusammenzufassen.
Bei VBA -Nein dann eher nur eine Tabelle.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige