Microsoft Excel

Herbers Excel/VBA-Archiv

Liste aus zwei Tabellen | Herbers Excel-Forum


Betrifft: Liste aus zwei Tabellen von: kirsche
Geschrieben am: 19.10.2008 12:36:48

hallo leute,
mal wieder brauche ich eure hilfe.

ich möchte eine liste erstellen, die sich aus zwei tabellen zusammen setzt.
1.tabelle = oberbegriffe
2.tabelle = unterbegriffe

nun soll in der liste der erste oberbegriff eingetragen werden und dann die dazugehörigen unterbegriffe. ich habe ca. 500 oberbegriffe und ca. 2000 unterbegriffe. momentan kopiere ich beide tabellen in die liste und sortiere dann, aber leider sollen nun auch noch berechnungen statt finden, das funzt dann nicht mehr.

https://www.herber.de/bbs/user/56112.xls

kann mir vielleicht jemand weiter helfen?

liebe grüße kirsche

  

Betrifft: AW: Liste aus zwei Tabellen von: Tino
Geschrieben am: 19.10.2008 16:02:18

Hallo,
teste mal und drücke auf den Butten.

https://www.herber.de/bbs/user/56118.zip

Gruß Tino


  

Betrifft: AW: Liste aus zwei Tabellen von: kirsche
Geschrieben am: 22.10.2008 21:14:31

hallo tino,

ich habe mir die datei runter geladen und angeschaut. auf den ersten blick schein es meine lösung zu sein.
zum testen komme ich leider erst am wochenende.
ich melde mich dann noch mal, ob alles so funktioniert.
danke für deine hilfe und mühe.

gruß dörte


  

Betrifft: AW: Liste aus zwei Tabellen von: kirsche
Geschrieben am: 02.11.2008 09:59:05

hallo tino,

leider bin ich erst heute zum testen gekommen. die testdatei läuft super, so wie ich es mir vorgestellt habe.

ich habe deinen code auf meine tabelle angepasst und es hat leider nicht funkioniert.

in der fettmarkierten zeile springt der Debugger an:

'BerechneMittelwerte****************************************
MAddresse = Left$(MAddresse, Len(MAddresse) - 1)
tempA = Split(MAddresse, ";")
For i = LBound(tempA) To UBound(tempA)
With Sheets("PLU")
If i <> UBound(tempA) Then

.Range(tempA(i)) = Application.WorksheetFunction.Average(.Range(.Range(tempA(i)).Offset(1, 0), .Range(tempA(i + 1)).Offset(-1, 0)))


Else
Debug.Print .Range(.Range(tempA(i)).Offset(1, 0), .Cells(.Rows.Count, "E").End(xlUp)).Address
.Range(tempA(i)) = Application.WorksheetFunction.Average(.Range(.Range(tempA(i)).Offset(1, 0), .Cells(.Rows.Count, "E").End(xlUp)))
End If
.Range(tempA(i)).NumberFormat = "#,##0.00"
End With
Next i
'**********************************************************

hab schon rumgetüfftelt, aber bekomme es leider nicht hin.

lieben gruß kirsche


  

Betrifft: AW: Liste aus zwei Tabellen von: Tino
Geschrieben am: 02.11.2008 10:31:36

Hallo,
in tempA sind die Zelladresse gespeichert wo die Mittelwerte rein sollten.
Diese Daten werden in dieser Zeile gesammelt.

MAddresse = MAddresse & Sheets("Liste").Cells(i, "E").Address & ";"


und in dieser in eine Area gespeichert.

MAddresse = Left$(MAddresse, Len(MAddresse) - 1)
tempA = Split(MAddresse, ";")



Also gehe ich mal davon aus, dass aus irgendeinem Grund diese nicht vorhanden sind.
Aber dazu müsste ich den jetzigen Aufbau der Tabelle kennen.


Gruß Tino


Beiträge aus den Excel-Beispielen zum Thema "Liste aus zwei Tabellen"