Registriert seit: 28.02.2015
Version(en): 2016
Guten Abend,
ich möchte dynamische DropDowns variabel gestalten.
Dazu muss ich jedoch die aktuellen Namen der entsprechenden "intelligenten Tabellen" auslesen und entsprechend dem Zellinhalt bestimmter Zelle umbenennen.
hier sind meine VBA Kenntnisse absolut nicht ausreichend um diese Schleife zu programmieren.
Hätte jemand Lust, mir dabei zu helfen?
Gruß
Michael
Win 10
Office 2010 & 2016
Registriert seit: 02.12.2017
Version(en): Office 365
Dazu bräuchte man eine Beispieldatei die identisch deiner is im Aufbau!
Registriert seit: 28.02.2015
Version(en): 2016
Hier eine Beispieltabelle
wenn die Namen der Personen sich ändern, muss die dazugehörige Tabelle der Positionen entsprechend umbenannt werden.
das möchte ich gerne automatisieren.
Gruß
Michael
Forum_Dropdown_Listobject.xlsx (Größe: 10,74 KB / Downloads: 1)
Win 10
Office 2010 & 2016
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
her mal eine Antwort zu einer Schleife über die Tabellen. Das geht erst mal nur auf einem Blatt und die Änderung und Schleife über alle Blätter drumherum usw. schaffst Du.
For Each tabellen In ActiveSheet.ListObjects
MsgBox tabellen.Name
Next
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 28.02.2015
Version(en): 2016
@Schauan
das Problem, das ich VBA- Sprachlich habe ist, dass ich nicht weiß, wie ich es anstelle, die Einzelnen Tabellen anzusprechen und zu prüfen, ob der Name geändert werden muss.
Die For Next Schleife hatte ich auch schon im Netzt ermittelt. Aber mir fehlt hier explizit der Background bei Listobjecten .
Ich hatte schon probiert, in eine Zelle der jeweiligen Tabelle zu springen um dann den Namen auszulesen, zu vergleichen und mit dem der in einer Variablen gepeicherten zu ersetzen. Ich würde zuvor alle Überschriften in Variablen speichern und der Reihe nach als Tabellennamen einsetzen.
Und hier ist mein Problem, ich weiß nicht wie ich den (variablen) Bestandsnamen auslese um dann die Tabelle anzusprechen. Bisher habe ich nur Code zum umbenennen gefunden, wenn der alte Tabellenname bekannt war.
Gruß
Michael
Win 10
Office 2010 & 2016
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo Michael,
erst mal das auslesen aller vorhandenen Listobject-Namen. Die Namen werden in einer Collection gespeichert und bleiben bis zur nächsten Ausführung des Sub drin.
Ich weiß jetzt allerdings nicht, wie Du feststellen willst, welche Liste umbenannt werden soll. Ich kann auch erst morgen Abend weitermachen, muss jetzt offline gehen - morgen gegen 5 geht's wieder gen Arbeit ..
Code:
Option Explicit
Public colTabs As Collection
Sub test()
Dim blaetter As Worksheet, tabellen As ListObject
Set colTabs = New Collection
For Each blaetter In ThisWorkbook.Worksheets
For Each tabellen In blaetter.ListObjects
colTabs.Add tabellen.Name
Next
Next
End Sub
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)