Collapse column

Autor Thema: Office 2013: Variable Verlinkung in eine anderen Exceldatei mit zählenwenn  (Gelesen 1961 mal)

Offline Basta

  • Newbie
  • *
  • Beiträge: 4
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2013
Hallo liebe Community,

wie so häufig ist es der erste Post einer Person und ich möchte euch vorab versichern, dass ich nicht nur euer Forum nach einer Antwort durchsucht habe, sondern auch in anderen Foren unterwegs war, bevor ich die Frage überhaupt stelle.

Leider schaffe ich es nicht meinen Fehler in der Zählenwenn Funktion zu beheben.


Zur Tabelle:

Es gibt 7 Workbooks von denen eine als Übersicht dienen soll und die anderen 6 Workbooks jeweils Gruppen aus einem unterschiedlichen Distrikt darstellen. Alle Distrikt.xls Datein sind identisch aufgebaut und unterscheiden sich lediglich in der Anzahl der Gruppen (Worksheets z.B. "B 01" bis "B 50"), die über die Anzal der User und deren Mitgliedschaftsstatus Aufschluss geben. Jeder User hat eine eindeutige ID in Spalte B des Distrikt-Workbooks. In Spalte C gibt ein "[   X   ]" darüber Aufschluss, ob der Mitgliedschaftsantrag bereits unterschrieben wurde oder noch nicht.

Die "Zählenwenn"-Funktion funktioniert ohne Probleme und ich bekomme das richtige Ergebnis für die Gruppe "B 01" mit diesem Befehl:

=ZÄHLENWENN('[B-Membership-Form.xlsx]B 01'!$C$6:$C$40;"*X*")

Der komplette Name der Gruppe steht in der Spalte A und ich würde natürlich am liebsten einfach schreiben:

=ZÄHLENWENN("'[B-Membership-Form.xlsx]"& A1 &"'!$C$6:$C$40";"*X*")


Nachdem ich etwas gesucht habe bin ich auf die Funktion "Indirekt()" gestoßen. Allerdings glaube ich mittlerweile nicht dass diese Funktion für mein Problem brauchbar ist. Oder ich habe sie einfach nicht in ihrem vollen Umfang verstanden. Anwenden konnte ich sie gewiss nicht. ^^


Was ich also suche ist:

1) =ZÄHLENWENN('[B-Membership-Form.xlsx]B 01'!$C$6:$C$40;"*X*") -> Wie bette ich den Gruppen Namen als String aus Spalte A in diese Abfrage ein? (B 01 = A1, B 02 = A2.... usw.)

2) =ZÄHLENWENN('[B-Membership-Form.xlsx]B 01'!$C$6:$C$40;"*X*") -> Der Buchstabe des Distrikts ergibt den Gruppennamen ohne Nummer. Dieser variiert jedoch zwischen 1 und 3 Buchstaben sodass ich nicht einfach den ersten oder die ersten drei nehmen kann. Weiterhin besteht auch hier das Problem Nr. 1)

Ich danke für legliche Ideen und hoffe die Frage nicht im Forum übersehen zu haben.


Gruß
Basta

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline steve1da

  • Hero Member
  • *****
  • Beiträge: 1.529
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2010
Antw: Office 2013: Variable Verlinkung in eine anderen Exceldatei mit zählenwenn
« Antwort #1 am: November 07, 2016, 07:31:48 Vormittag »
Hola,

für Indirekt() muss die Quelltabelle geöffnet sein, ansonsten erhälst du eine Fehlermeldung. Ist das gewährleistet/machbar?

Gruß,
steve1da

Offline Basta

  • Newbie
  • *
  • Beiträge: 4
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2013
Antw: Office 2013: Variable Verlinkung in eine anderen Exceldatei mit zählenwenn
« Antwort #2 am: November 07, 2016, 07:54:58 Vormittag »
Machbar ist es, aber in der Anwendung extrem unpraktisch. Zumal ich noch nicht weiß ob es reicht dass nur die Datei auf ist oder ob ich die entsprechende Tabelle auch active haben muss.

Bei 162 Arbeitsblättern ist das extrem unpraktisch.

PS: Das die Datei bei "Indirekt()" geöffnet sein muss habe ich in anderen Foren auch gefunden, unteranderem deswegen habe ich sie für meine Anwendung als fehlplatziert empfunden.
« Letzte Änderung: November 07, 2016, 07:56:37 Vormittag von Basta »

Offline gmg-cc

  • Hero Member
  • *****
  • Beiträge: 1.321
    • Profil anzeigen
    • Meine Webseite
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Gut
  • Version [Office] : Office 2016
Antw: Office 2013: Variable Verlinkung in eine anderen Exceldatei mit zählenwenn
« Antwort #3 am: November 07, 2016, 09:25:54 Vormittag »
Moin,
ich könnte mir vorstellen, dass du mit Power Query (siehe http://www.excel-ist-sexy.de/power-query-das-add-in/) zum Ziel kommen könntest; insbesondere weil es so viele Tabellenblätter sind hast du zwar einmalig einen höheren Aufwand anschließend aber einen problemlosen Zugriff auf d (geschlossenen) Dateien.

Wenn ich dir konkret helfen soll, dann brauche ich1+2 Musterdateien (abgespeckt und anonymisiert), dann sehe ich auch, ob ich dich richtig verstanden habe.
Gruß
Günther

Offline Basta

  • Newbie
  • *
  • Beiträge: 4
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2013
PowerQuery habe ich heute morgen auch überlegt. Das kannte ich es allerdings nur um auf andere Medien/Quellen zuzugreifen und es dann in einem Excel Sheet auszugeben in dem ich es dann auswerten möchte. Hier möchte ich ja das Sheet auswerten und dann nur die Antwort zurück geben.

Ich habe jetzt mal drei Tabellen erstellt (Sehr stark reduziert aber sollte zeigen was ich meine.)

Overview-Form-TEST.xls soll einen Überblick über die bereits beigetretenen Mitglieder geben.

B-Membership-Form-Test & MSU-Membership-Form-Test stellen dabei jeweils die Bezirke dar, die jeweils in Gruppen unterteilt sind.

Zu Finden sind die Tabellen unter dem link:

https://drive.google.com/open?id=0BwzNPOKRkTXyNXBZa3JHNXdvcFE

Die "zählenwenn"-Abfrage funktioniert wie beschrieben. Ich möchte allerdings auf die Zelle verweisen, damit ich es nur für eine Gruppe machen muss und nicht für 9 Spalten bei 162 Gruppen.


Ich entschuldige das Format. Musste schnell gehen ;)


Gruß und danke!

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline gmg-cc

  • Hero Member
  • *****
  • Beiträge: 1.321
    • Profil anzeigen
    • Meine Webseite
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Gut
  • Version [Office] : Office 2016
Antw: Office 2013: Variable Verlinkung in eine anderen Exceldatei mit zählenwenn
« Antwort #5 am: November 07, 2016, 14:18:25 Nachmittag »
Moin,

ich fange einmal damit an:
Zitat
Der komplette Name der Gruppe steht in der Spalte A und ich würde natürlich am liebsten einfach schreiben:
Nööö ... Das wäre dann wohl auch "zu einfach"  8)
Dann: Verbundene Spalten sind für mich (zumindest in der Form wie du sie nutzt) ein absolutes NoGo.
Weiterhin: Was ist das denn für ein ominöses Listen-Format? Wenn das in der Realität so ist: Auch ein NoGO! Gleiche Daten (User ID, etc) gehören untereinander in 1 Spalte 1er Tabelle/Liste.

Wenn das alles bereinigt ist, sehe ich kein Problem, alles mit PQ zusammenzufassen und dann beispielsweise mit PivotTable nach Belieben auszuwerten. Eventuell ist es hilfreich, mit VBA die Basis zu erstelle; und die Daten in eine "Intelligente Tabelle"!
Gruß
Günther

Offline Basta

  • Newbie
  • *
  • Beiträge: 4
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2013
Antw: Office 2013: Variable Verlinkung in eine anderen Exceldatei mit zählenwenn
« Antwort #6 am: November 07, 2016, 15:52:30 Nachmittag »
Zitat
Dann: Verbundene Spalten sind für mich (zumindest in der Form wie du sie nutzt) ein absolutes NoGo.

- Von welchen Spalten/Zeilen (Zellen) sprichst du ? Die Prüfung die ich machen möchte findet ausschließlich in Spalte C,F,I,L,O... von Zeile 6 bis 40 statt. Das Einzige was in den Tabellen verbunden ist, sind die Tabellen Header und die sind absolut nebensächlich für das Problem oder irre ich?

Zitat
Weiterhin: Was ist das denn für ein ominöses Listen-Format? Wenn das in der Realität so ist: Auch ein NoGO! Gleiche Daten (User ID, etc) gehören untereinander in 1 Spalte 1er Tabelle/Liste.

- Ich gebe dir Recht, dass die Daten untereinander gehören wenn der Fokus auf Prüfbarkeit und einfacher Programmierung liegt. Wenn man jedoch alles in Papier-Form an die Gruppen ausgeben muss, sieht das ganze schon wieder anders aus. Das Layout ist wie ich geschrieben habe dem Original nachempfunden. Ich könnte ein Blatt auf 3 Spalten beschränken und dann in Spalte A die Nummer, in Spalte B die ID und in Spalte C das Prüfmerkmal erstellen. Dann hätte zwar eine vereinfachte Programmierung, aber statt 80 Blatt Papier mehr als 1000. Neben dem deutlich höheren Kosten käme Papierverbrauch und Müll hinzu. Zumal diese Listen in regelmäßigen Abständen herausgegeben werden müssen, würde sich dieser Site Effect sehr negativ auswerten. 

Somit gebe ich dir nicht Recht, dass es ein NoGo ist. Es gibt mehrere Seiten der Betrachtung weswegen mit
Zitat
NoGo
Ausdrücken meines Erachtens sparsam umgegangen werden sollte. Dass ich es allerdings auf drei statt 9 Spalten hätte beschränken können, ist mir bewusst. Da ich aber auch dort keine Zusammenhängenden Bereiche gehabt hätte, wäre ich noch immer bei 9x"Zählenwenn"-Funktionen. Und meinem Problem der Vereinfachung keinen Schritt näher gekommen.


Aber ich danke dir dass du meine Vermutung bestätigt hat, dass ich nicht einfach den String aus der Zelle entnehmen kann, schade. Wie ich das ganze in dieser Form mit PQ zusammenfasse ist mir noch nicht bewusst aber würde für mich aktuell deutlich mehr Zeit in Anspruch nehmen als es einmal händisch zu erstellen, schade. Und auch noch einmal danke, dasss du dir dir Zeit genommen hast um dich dem Problem zu widtmen.

Offline gmg-cc

  • Hero Member
  • *****
  • Beiträge: 1.321
    • Profil anzeigen
    • Meine Webseite
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Gut
  • Version [Office] : Office 2016
Antw: Office 2013: Variable Verlinkung in eine anderen Exceldatei mit zählenwenn
« Antwort #7 am: November 07, 2016, 17:21:59 Nachmittag »
Block 1) Ja, ich meine die Überschriften. Und zu einer "sauberen" Tabelle gehört eine Saubere Überschrift.

Block 2) Jeder Profi wird dir den Satz "Form Follows Function" aus tiefstem Herzen bestätigen. Für eine Auswertung kann ich ja ein getrenntes "Formular"/"Bericht" bauen, wo auf die ausgewerteten Daten zurück gegriffen wird. - Natürlich ist auch solch ein Konstrukt auswertbar, aber das muss entsprechend mit unnötigem Aufwand programmiert werden. - Insofern: NeverEver! (Um das von dir verschmähte Wort zu umgehen.)
Du siehst das anders, und das ist dein gutes Recht. Ich würde eine derartige Tabelle ohne Veränderungen nach meinen Vorstellungen noch nicht einmal für (zahlende) Kunden machen, denn "Nichts Halbes und nichts Ganzes" liefere ich nicht ab, weil über kurz oder lang Ärger ins Haus steht ...

Block 3) Das habe ich nicht gesagt oder gemeint. Ich beziehe mich auf die Muster-Tabelle und dort habe ich in Spalte_A -> Zitat:"Der komplette Name der Gruppe steht in der Spalte A und ich würde natürlich am liebsten einfach schreiben:" nicht gefunden.

Nimm das Ganze nicht persönlich, ich habe nur sehr deutlich machen wollen, dass ein Haus, welches auf schwammigen Grund gebaut ist, nicht unbedingt vor Stabilität strotzt. - Rein aus Gründen der Selbstbestätigung bzw. Ehrgeiz habe ich eine (aus meiner Sicht) "vernünftige" Lösung (Basis PQ) gefunden, die aber auf meinen Anmerkungen basiert. - What ever, ich überlasse anderen Tüftlern das Feld und ziehe mich hier ohne Groll aber endgültig aus dem Thread zurück.
Gruß
Günther

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.