Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Bezug/Durchschnittswert mehrerer Werte anderer Tabellenblätter
#1
Hallo ihr Experten,

mit meinem Excelproblem komme ich gerade absolut nicht mehr weiter und hoffe, ihr könnt mir helfen.

Im ersten Tabellenblatt meiner Datei soll eine Auswertung über die Daten der anderen Tabellenblätter gemacht werden. Dabei soll der Wert/Text aus der ersten Spalte des ersten Tabellenblattes in den ersten Spalten der anderen Tabellenblättern gesucht werden und für alle entsprechenden Ausgabewerte in deren zweiten Spalte der Durchschnitt im ersten Tabellenblatt in der zweiten Spalte ausgegeben werden. Da die Anzahl und die Benennung der Tabellenblätter variabel ist, habe ich zwei Hilfstabellenblätter (=Start & Stop) eingefügt. Idee ist, alle Tabellenblätter zwischen diesen für die Auswertung heranzuziehen.

Haltet mich nicht für faul, aber ich habe schon einiges versucht, was nicht funktioniert hat. Mit meinem Latein bin ich am Ende Sad Daher habe ich euch eine Beispieldatei angehängt, die mein Problem veranschaulicht. Ich hoffe, ihr könnt mir weiterhelfen! Über jede Hilfe bin ich dankbar.


Angehängte Dateien
.xlsx   Durchschnittsvergleich über Tabellen.xlsx (Größe: 23,04 KB / Downloads: 4)
Antworten Top
#2
Hallo,

Wow, gleich auf Anhieb in 3 Foren gefunden. Cross-Posting ist nicht so gern gesehen. Du solltest zumindest die Beiträge untereinander verlinken.

http://www.office-loesung.de/p/viewtopic.php?f=166&t=735932
http://www.ms-office-forum.net/forum/sho...p?t=342245

Wo hast Du es denn noch gepostet?
Gruß
Michael
Antworten Top
#3
(02.05.2017, 09:00)Der Steuerfuzzi schrieb: Hallo,

Wow, gleich auf Anhieb in 3 Foren gefunden. Cross-Posting ist nicht so gern gesehen. Du solltest zumindest die Beiträge untereinander verlinken.

http://www.office-loesung.de/p/viewtopic.php?f=166&t=735932
http://www.ms-office-forum.net/forum/sho...p?t=342245

Wo hast Du es denn noch gepostet?

Hallo Michael,

sehr aufmerksam. Du hast alle gefunden und korrekt verlinkt! Danke dafür Thumps_up
Antworten Top
#4
Hallo

Ich habe mal eine Lösung ausprobiert, bin aber mit dem Ergebnis nicht zufrieden.
Nach jedem Button Klick veraendern sich die Werte, ich nehme an Zufallszahlen-

mfg  Gast 123


Angehängte Dateien
.xlsm   Durchschnittsvergleich über Tabellen F.xlsm (Größe: 35,24 KB / Downloads: 2)
Antworten Top
#5
Hallo Gast123,

deine Lösung funktioniert, allerdings kann ich sie nicht nachvollziehen und für meine richtige Tabelle portieren.

Da es sich nur um eine Beispieldatei handelt um mein Problem darzustellen, hatte ich diese mit Zufallszahlen erstellt.

Wie kann ich deine Lösung für eine andere Tabelle übernehmen (wo muss/kann ich die Bezüge ändern?)

Danke,
Petra
Antworten Top
#6
Hi,

Matrixformel** (STRG+UMSCHALT+EINGABETASTE) in B2:

=MITTELWERT(WENN(N(BEREICH.VERSCHIEBEN(INDIREKT("'"&SheetList&"'!A1");ZEILE(A$1:A$100)-MIN(ZEILE(A$1:A$100));))=A2;N(BEREICH.VERSCHIEBEN(INDIREKT("'"&SheetList&"'!B1");ZEILE(A$1:A$100)-MIN(ZEILE(A$1:A$100));))))

wobei SheetList in Namens-Manager als:

={"Tabelle2"."beliebiger Name"."dfhfdg"."3454867"}

definiert ist.

Grüße
Advanced Excel Techniqueshttp://excelxor.com/
Antworten Top
#7
Berichtigung:

=MITTELWERT(WENN(N(BEREICH.VERSCHIEBEN(INDIREKT("'"&SheetList&"'!A1");ZEILE(A$1:A$100)-MIN(ZEILE(A$1:A$100));0))=A2;N(BEREICH.VERSCHIEBEN(INDIREKT("'"&SheetList&"'!B1");ZEILE(A$1:A$100)-MIN(ZEILE(A$1:A$100));0))))

Grüße
Advanced Excel Techniqueshttp://excelxor.com/
Antworten Top
#8
Hallo Petra,

es freut mich das mein Makro als Beispieşl funktioniert.  Zum Anpassen hier eine Code Beschreibung  Achte im Code auf dieses Zeichen:   '##

Dieses Zeichen dieint zur Programm Erklaerung und was du dort aendern kannst.  Wenn es nicht klappt gib mir einfach die richtigen Spalten in deinen Tabellen an.  Probier es aber bitte zuerst mal selbst.  Bringt Erfahrung.  Ich nehme an die Auswertung Tabelle bleibt in Spalte A+B bestehen?
Mein Programm geht davon aus das in den Tabellen xxx die Spalte für den 2. Wert immer rechts neben der 1. Suchspalte ist.

mfg  Gast 123

Code:
With Worksheets("Auswertung")
  'LastZell in Spalte A Auswertung ermitteln     '## LastZell in Tabelle Auswertung Hier Spalte A
  lz = Cells(Rows.Count, 1).End(xlUp).Row        '## die Zahl 1 steht für 1.Spalte  Cells(Rows, 1)  
 
  '1.Schleife für alle Suchkriterien laden       '## der .Punkt for Range besagt: Tabelle Auswertung!
  For Each AC In .Range("A2:A" & lz)             '## hier kannst du die Spalten in Auswertung aendern
    '2.Schleife für alle Blaetter auswerten
    For j = a To b                               '## a + b sind 1. + letzte Tabellen Index Nr
            '##  Worksheets(j).Columns(1) = Columns(1) ist Spalte A oder so schreiben ("A")
            '##  stehen die Daten in einer anderen Spalte nur die Spalte aendern, als (2) od. ("B")  
            '##  und bitte beim Text After:= den Range immer mit aendern!! z.B. auf "B1"    
    Set rFind = Worksheets(j).Columns(1).Find(What:=AC, After:=Range("A1"), LookIn:=xlValues, _
        LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False)
   
             '##  mit der Auswertung kannst du auch spielen, es gibt drei Varianten
             '##  die 1.Variante ist als lange Kommazahl, die anderen als kurze Zahl gedacht      
           '**  Auswertung drei Varianten:
           'Werte als Kommazahl (6 Stellen)
           AC.Cells(1, 2).Value = Wert2 / n    'Kommazahl
         
           'Werte als Ganzzahl oder 2 Kommastellen
          'AC.Cells(1, 2).Value = CInt(Wert2)   'Ganzzahl
          'AC.Cells(1, 2).Value = Round(Wert2 / n, 2)  '2 Kommastellen
.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste