Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Liste in 2003 / Tabelle in 2007 | Herbers Excel-Forum


Betrifft: Liste in 2003 / Tabelle in 2007 von: Bruno
Geschrieben am: 10.02.2012 23:14:36

Guten Abend zusammen

Eine unter Excel 2003 erstellte Arbeitsmappe soll nun neu unter Excel 2007 betrieben werden. Unter der Version 2003 wurde erfolgreich das Listenprinzip angewendet, jeder neu eingefügte Datensatz hat dabei automatisch Formeln und Formatierungen der Liste übernommen und diese wurde um die neu angefügten Datensätze dynamisch erweitert und neu berechnet.

Unter Excel 2007 klappt dies nun aber nicht mehr. Gemäss meinen Informationen läuft der Begriff «Liste» in Excel 2007 neu unter «Tabelle». Eine solche habe ich in 2007 nun auch erstellt und ihr den Namen «Datenliste» zugewiesen. Beim Hinzufügen neuer Daten mittels Userform oder Import von XML-Daten aus einem PDF-Formular werden neu angefügte Zeilen aber nicht in die Liste bzw. Tabelle aufgenommen sondern ausserhalb angehängt, ohne Übernahme von Formeln und Formatierungen! Auch werden die neu eingefügten Daten nicht in die Ergebniszeile mit einbezogen (z.B. «=TEILERGEBNIS(3;INDEX(Datenliste;;SPALTE()))-1»). Erst wenn ich den Tabellenbereich um die eingefügten Datenzeilen manuell unter «Tabellenname - Datenliste - Tabellengrösse ändern» erweitere, erfolgt die Aktualisierung der Ergebniszellen. Aber dies kann ja nicht die Lösung sein!

Unter Excel 2003 wurde der als Liste definierte Bereich mit einem blauen Rahmen und die erste freie Zeile mit * gut sichtbar markiert. In Excel 2007 ist davon nichts mehr zu sehen. Ist dieses Listenprinzip in Excel 2007 nicht mehr möglich oder muss ich anders vorgehen? Danke zum Voraus für Eure Tipps.

Bruno

  

Betrifft: AW: Liste in 2003 / Tabelle in 2007 von: Josef Ehrensberger
Geschrieben am: 10.02.2012 23:50:56


Hallo Bruno,

Tabellen/Listen werden schon unterstützt, schau mal in den Optionen, ob die Einstellungen passen.





« Gruß Sepp »



  

Betrifft: AW: Liste in 2003 / Tabelle in 2007 von: Bruno
Geschrieben am: 11.02.2012 11:56:38

Guten Tag Sepp

Die erwähnten Einstellungen sind bereits vorhanden. Manuell vorgenommene Neueinträge werden auch in die bestehende Liste übernommen, der Import von XML-Daten aber nicht. Hier muss die Liste, wie im ersten Posting bereits erwähnt, manuell um die neue Zeile erweitert werden. Könnte diese Erweiterung nach dem Datenimport nicht auch per VBA automatisiert werden? Auf die aktuelle Tabellengrösse dynamisch irgendwie mit «Resize Range +1». Dies schaffe ich mit meinen bescheidenen VBA-Kenntnissen leider alleine nicht und bräuchte weitere Unterstützung.

Gruss, Bruno


  

Betrifft: AW: Liste in 2003 / Tabelle in 2007 von: Bruno
Geschrieben am: 12.02.2012 20:54:19

Unterschied erkannt, Problem gelöst.

Unter Excel 2003 war es möglich, einfach eine ganze Zeile an den bestehenden Listenbereich anzuhängen. Excel 2007 lässt dies offensichtlich nicht mehr zu; es kann nur ein Zellbereich angefügt werden mit einer Spaltenanzahl gleich oder kleiner Zieltabelle, sonst erfolgt keine automatische Aufnahme in die Tabelle. Dies erscheint mir im Nachhinein eigentlich auch logisch.

Ob und wie ein Tabellenbereich per VBA angepasst werden könnte, würde mich aber trotzdem interessieren.

Besten Dank und Gruss,

Bruno


  

Betrifft: AW: Liste in 2003 / Tabelle in 2007 von: Josef Ehrensberger
Geschrieben am: 13.02.2012 09:06:31


Hallo Bruno,

dazu gibt es den Befehl .Resize.

ActiveSheet.ListObjects("Tabelle1").Resize Range("$A$1:$B$7")





« Gruß Sepp »



  

Betrifft: AW: Liste in 2003 / Tabelle in 2007 von: Bruno
Geschrieben am: 13.02.2012 11:02:53

Guten Morgen Sepp

Danke für Dein Feedback. Resize ist mir bekannt, ich habe es damit auch versucht. Aber der Tabellenbereich ist ja dynamisch, meist wird er grösser aber auch mal kleiner. Also kann z.B. ActiveSheet.ListObjects("Tabelle1").Resize Range("$A$1:$B$7") wohl kaum zum gewünschten Resultat führen. Das Bereichsende (hier $B$7) müsste m.E. dynamisch gesetzt werden können, aber wie?

Gruss, Bruno


  

Betrifft: AW: Liste in 2003 / Tabelle in 2007 von: Josef Ehrensberger
Geschrieben am: 13.02.2012 13:50:37


Hallo Bruno,

das war ja nur ein Beispiel, wie kann man den die Zeilenanzahl deines Bereiches ermitteln?




« Gruß Sepp »



Beiträge aus den Excel-Beispielen zum Thema "Liste in 2003 / Tabelle in 2007"