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

Name Intelligenter Tabelle auf Tabellenblattebene deklarier

Name Intelligenter Tabelle auf Tabellenblattebene deklarier
30.01.2024 15:34:55
FranziskusV
Hallo,
Eine Frage. Wenn ich in den Namensmanager schaue dann sehe ich dass die Namen der Intelligenten Tabellen automatisch auf Ebene der Arbeitsmappe deklariert sind. Kann man die auch auf Ebene des Tabellenblattes deklarieren ? Das würde eines meiner Probleme lösen. Aber die entsprechende Auswahl steht im Namesmanager nicht zur Verfügung..
Vielen Dank für Hinweise.
Gruss,
FranziskusV

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: wozu das ? ...
30.01.2024 16:04:59
neopa C
Hallo Franziskus,

... es ist doch gerade ein Vorteil der "intelligenten Tabellen", das die Tabellen Mappe übergreifend gelten.


Gruß Werner
.. , - ...

AW: wozu das ? ...
30.01.2024 16:31:35
FranziskusV
Hallo Werner,

Danke für dein Feedback. Ich frage trotzdem nochmal nach.

Wenn ich dieses Tabellenblatt aber kopieren möchte um dann mit Makros darauf zuzugreifen....dann habe ich ein Problem. Denn dann gibt es nach dem Duplizieren des Tabellenblattes plötzlich eine Fehler wenn ich auf einem anderen Tabellenblatt meinen VBA-Code auslöse. Jedenfalls ist das meine Situation im Moment.

Habe ich mein Projekt komplett falsch strukturiert ?

Ich habe ein Tabellenblatt erstellt auf dem gewisse Eingaben und Berechungen (teilweise mit Formeln und teilweise mit Makros) stattfinden. Ausserdem gewisse andere Dinge über VBA. Das einzelne Blatt läuft prima. Jetzt da ich dieses Musterblatt hatte dachte ich einfach eine Schaltfläche zu hinterliegen wo dann weitere Tabellenblâtter generiert werden. Und auf denen soll der VBA-Code aber nur blattspezifische Dinge ausführen. Sonst wird es ja eine große Suppe...

Ich bin nicht so erfahren in der Materie...

Ich habe die Intelligenten Tabellen gewählt weil sie beim Zufügen von Zeilen am Ende automatisch die Zeilenbänderung und andere Vorteile zeigen. Aber ich hätte diese Vorteile der intelligenten Tabelle in der Handhabung gerne bezogen auf das einzelne Tabellenblatt.

Gibt es da eine Möglichkeit ? Ich habe sonst ein grösseres Problem.

Gruss, FranziskusV
Anzeige
AW: andere Möglichkeiten gibt es (fast) immer, ...
30.01.2024 16:49:22
neopa C
Hallo FranziskusV,

... so wie Du es jetzt beschriebst, liegt das Problem möglicherweise darin, das Du (noch) nicht berücksichtigt hast, daß mit dem Kopieren von Tabellenblattern mit "intelligent. Tab." deren Namen in der Kopie einen modifizierten Namen erhalten. Ob Du diese in/mit VBA "erkunden" und entsprechend anwenden kannst, weiß ich nicht, denn ich beschäftige mich mit VBA nicht.

Wenn Du beides, also "intelligent. Tab." und Kopieren von Tabellenblattern mit solchen beibehalten willst, mußt Du das klären (lassen).

Und ob es alternative Lösungsmöglichkeiten für Deine akt. Projektstruktur gibt oder gäben könnte, kann ich mangels Kenntnis dessen auch nicht einschätzen.

Gruß Werner
.. , - ...

Anzeige
anstatt den Namen ...
30.01.2024 17:23:04
Uduuh
Hallo,
... kannst du auch den Index nehmen. Worksheets("Blattname").Listobjects(1)

Gruß aus'm Pott
Udo
AW: anstatt den Namen ...
30.01.2024 17:33:13
FranziskusV
Hallo Udo,

Danke für den Hinweis dass ich den Index nehmen kann.

Allerdings sind auch meine Tabellenblätter dynamisch benannt. Sie erhalten automatisch einen Namen aufgrund der Verknüpfung mehrerer Zellewerte die dann beim Worksheet_Change Ereignis den Blattnamen anpassen. Daher habe ich den Code der relevant für die "Aktionen" auf den jeweiligen Tabellenblâttern zuständig ist, auch immer bei den einzelenen Tabellenblättern geschrieben (also Private Sub (). Und dann habe ich immer mit "Me" gearbeitet um diese Tabellenblätter im Code anzusprechen.

Wie kann ich mit dem Index arbeiten wenn die Tabellenblattnamen dynamisch sind und ja auch jederzeit neue Blätter erzeugt werden können durch das Duplizieren ?

Ich hätte das eigentlich früher klären müssen...aber mir ist das erst im Zuge des Projekts bewusst geworden.

Ich bin für weitere Hinweise sehr dankbar.

LG, FranziskusV
Anzeige
AW: anstatt den Namen ...
30.01.2024 18:21:10
Uduuh
Hallo,
wenn deine Codes im Modul des Blatts stehen, kannst du einfach mit Listobjects(1) ohne Referenzierung auf das Blatt arbeiten.
Me.Listobjects(1) würde aber auch gehen.

Gruß aus'm Pott
Udo
AW: anstatt den Namen ...
30.01.2024 19:31:06
FranziskusV
Udo, das ist vielleicht eine dumme Frage, aber wie kann ich denn den Index meiner drei Intelligenten Tabellen sehen.
Ich nehme an der Index wird in der Reihenfolge vergeben wie die Intelligenten Tabellen erstellt worden sind auf einem Tabellenblatt. Das ersterstellt wird also Index=1 haben.

Allerdings weiss ich gar nicht mehr mit welcher Reihenfolge ich damals die drei Intelligenten Tabellen eingefügt habe. Das ist schon ein paar Wochen her.

Und soweit ich gesehen habe kann man den Index eines ListObjects nicht im Eigenschaftenfenster sehen. Der muss also über Code ausgelesen werden.
Kennst du einenVBA-Code der mit den Index jeder der drei Tabellen rausgeben kann ? Also anhand des Namens.

Dann wüsste ich schon einmal mit welchem Index ich welche der drei Intelligenten Tabellen anspreche.

Aber löst das wirklich mein Probem ?

Ich will das Musterblatt mit diesen 3 Intelligenten Tabellen ja mehrfach duplizieren. Und wie wird Excel dann beim Duplizieren die Indexe vergeben ? Wird das ListObject mit Index =1 nach dem Duplizieren auch diesen gleichen Index auf einem anderen Tabellenblatt erhalten ? Oder arbeitet Excel dann vielleicht anders, von oben nach unten zum Beispiel. Denn wenn ich mich richtig erinnere sind meine 3 ListObject's nicht in einer vertikalen Chronologie entstanden. Dann haben die intelligenten Tabellen auf einem zweiten Blatt vielleicht eine andere Index-folge als auf dem Musterblatt .

Ich brauche eine feste Zuordnung des Index der von einem Tabellenblatt zum anderen erhalten bleibt. Ob das so ist müsste ich mit einem entsprechend Code prüfen.

Gruss, FranziskusV

Aber ich möchte ja später mein Tabellenblatt (mit den jeweils 3 darauf liegenden Intelligenten Tabellen) duplizieren
Anzeige
AW: anstatt den Namen ...
30.01.2024 22:32:32
Uduuh
Hallo,
im Blattmodul:
Sub aaa()

Dim i As Integer
For i = 1 To Me.ListObjects.Count
MsgBox i & ": " & Me.ListObjects(i).Name
Next i
End Sub


Gruß aus'm Pott
Udo
AW: anstatt den Namen ...
31.01.2024 16:45:54
FranziskusV
Danke Udo, das hilft mir.
Kann ich auch den Index einer Intelligenten Tabelle verändern via VBA. Es wäre sinnvoll wenn die von oben nach unten mit 1 bis 3 indexiert wären und nicht durcheinander. Das würde ich gerne noch anpassen ehe ich den Code ändere.
LG, FranziskusV
nicht dass ich wüsste. owT
31.01.2024 19:17:43
Uduuh
oT nachgefragt ...
30.01.2024 17:47:14
neopa C
Hallo Udo,

... nun gleich auch Dich: Gibt es für Dich noch die Möglichkeit exceltreffen.de zu reaktivieren?
Und verzeih mir meine dann offensichtliche Altersdemenz, wenn Du mir schon mal auf meine frühere gleiche Frage geantwortet haben solltest. Ich kann mich aktuelle jedenfalls nicht mehr daran erinnern.

Was NoNet zur gleichen Frage vor nicht mal einer ganzen Stunde geschrieben hat, kannst Du hier nachlesen: https://www.herber.de/forum/archiv/1960to1964/1962712_Ansicht_auf_aktuelles_Datum_quotweiterschiebenquot.html

Gruß Werner
.. , - ...
Anzeige
AW: oT nachgefragt ...
30.01.2024 18:27:35
Uduuh
Hallo,
welch ein Zufall. Ich habe vorhin deswegen eine Email an Nonet geschickt.
Auszugsweise habe ich sie jetzt auch an dich gesendet. (ätemail) Dann weißt du auch, was los ist.

Gruß aus'm Pott
Udo
AW: oT noch keine da; ich schau dann morgen nochmal owT
30.01.2024 19:36:29
neopa C
Gruß Werner
.. , - ...

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige