Clever-Excel-Forum

Normale Version: VBA Arbeitsblätter automatisch erstellen mit Zellbezug
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Wie willst Du denn den Verlauf dieses Threads nachvollziehen?
VBA läuft (Ausnahmen bestätigen die Regel) NICHT unter OpenOffice!
Das heißt, Du musst auf der Arbeit genügend Zeit bekommen, um Dein Projekt zu entwickeln.
Ich als Arbeitgeber würde einem VBA-Novizen sicherlich nicht diese Möglichkeit einräumen, schließlich soll in erster Linie Gewinn erwirtschaftet werden.

Nachdem ich Deine Datei jetzt angeschaut habe:
Filtere die Tabelle1 nach Zeitraum und DSTNR und gut ist es.
Über welches Datenvolumen reden wir eigentlich?
Denn wenn Du einen Ausdruck erstellen willst, reicht es, blockweise 31 Zeilen der ersten drei Spalten des Filtrats in den Ausdruck zu kopieren.
Excel kopiert nämlich nur sichtbare Zellen.

Denkbar, dass es auch automatisch mit Formeln ginge, das kann ich mir ja noch anschauen.

Jedenfalls ist VBA unter allen jetzt bekannten Voraussetzungen für Dich nicht geeignet.

Gruß Ralf
Hallo Ralf,

jepp, das sehe ich auch so. Für mich ist deshalb hier Ende der Fahnenstange.
Ich hab da mal ne Formellösung.
So richtig geschmeidig, also schön kurz …  :21:
Blatt 1 filtere ich nach der jeweiligen DSTNR, sieht dann so aus (man beachte die Zeilennummern):
ABCD
1BTRTBETRAGDSTNR
210.04.1831.03.180,875128
627.05.1812.04.183,335128
1002.07.1817.06.184,635128

Im Vordruck dann nachfolgende Formel aus B16 nach rechts und unten ziehen:

BCD
14BTRTBETRAG
15
1610.04.201831.03.20180,87 €
1727.05.201812.04.20183,33 €
1802.07.201817.06.20184,63 €
19
20

ZelleFormel
B16{=WENNFEHLER(INDEX('BLATT 1 TÄGLICHE BUCHUNGEN'!A:A;KKLEINSTE(WENN(TEILERGEBNIS(3;INDIREKT("'BLATT 1 TÄGLICHE BUCHUNGEN'!"&ZEICHEN(SPALTE(BM1))&ZEILE($2:$1000)));ZEILE($2:$1000));ZEILE(A1)));"")}
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.

Die Idee habe ich von hier:
http://www.herber.de/excelformeln und bitte suchen .../formeln.html?welcher=366
Geht erstmal nur bis Zeile 1000 und müsste evtl. angepasst werden.

Außerdem könnte es bei großen Listen nicht schaden, die Berechnung auf manuell zu stellen und nur bei Bedarf (Ausdruck) durchzuführen.

Gruß Ralf
Überflüssig zu erwähnen, dass die Matrix-Formel E16:G46 so aussieht:
=WENNFEHLER(INDEX('BLATT 1 TÄGLICHE BUCHUNGEN'!A:A;
    KKLEINSTE(WENN(TEILERGEBNIS(3;INDIREKT("'BLATT 1 TÄGLICHE BUCHUNGEN'!"&ZEICHEN(SPALTE(BM1))
    &ZEILE($2:$1000)));ZEILE($2:$1000));ZEILE(A31)));"")
So, für heute reicht es.
"Autofilter" per Zellendropdown in C10
Hilfsspalte A kann ausgeblendet werden (ist für max. 1000 Treffer vorgesehen)
Durch die Hilfsspalte rennt die Datei und aktualisiert "im Augenblick":
ABCDEFGHIJ
10DSTNR5123
11
12ZeitraumXXXX
13
14BTRTBETRAGBTRTBETRAGBTRTBETRAG
15
16211.04.201801.04.20180,25 €15.11.201830.10.201813,40 €
171112.05.201830.04.201815,00 €29.03.201823.09.201813,86 €
181230.04.201821.06.201811,56 €29.07.201804.01.201818,15 €
191506.12.201826.03.20186,22 €04.02.201814.04.201816,06 €
202606.12.201829.09.20183,04 €22.03.201816.05.201815,49 €

ZelleFormel
A16{=WENNFEHLER(KKLEINSTE(WENN('BLATT 1 TÄGLICHE BUCHUNGEN'!D$2:D$1000=$C$10;ZEILE($1:$999));ZEILE(A1));"")}
B16=WENNFEHLER(INDEX('BLATT 1 TÄGLICHE BUCHUNGEN'!$A:$C;$A16+1;SPALTE(A1));"")
E16=WENNFEHLER(INDEX('BLATT 1 TÄGLICHE BUCHUNGEN'!$A:$C;$A47+1;SPALTE(A1));"")
H16=WENNFEHLER(INDEX('BLATT 1 TÄGLICHE BUCHUNGEN'!$A:$C;$A78+1;SPALTE(A1));"")
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.

ZelleGültigkeitstypOperatorWert1Wert2
C10Liste=Tabelle3!$A$1:$A$7

Ich habe die Datei mal angehangen.
Da sie Wennfehler() enthält (gab es als .xls noch nicht) habe ich sie als .ods (OpenOffice-kompatibel) gespeichert.

Gruß Ralf
@ RPP63 

Vielen lieben Dank für deine Zeit und deine Mühe. Das hätte ich nicht gedacht und macht mich sprachlos. Deine ausführlichen Erklärungen finde ich klasse und haben mir auch was gebracht. Ich wünsche dir ein erholsames und hoffentlich sonniges Wochenende. Smile Smile Smile  Smile Smile Smile 

Genau so habe ich mir das Dokument vorgestellt. Fantastisch. Auf ein DropDown-Menü wäre ich im Leben nie gekommen.... Von den Index.-, Teilergebnis,- und Wennfehler Formeln habe ich heute zum ersten Mal gehört. 
Ich kann mit der Datei und deinen Erklärungen alles sehr gut nachvollziehen. Die Formeln muss ich mir genauer angucken und Schritt für Schritt das ganz genau nachgucken. Diese Internetseite habe ich mir auch gespeichert um alle Infos zu haben.

Es freut mich, dass ich mit Formeln so ein Dokument hin bekommen kann ohne vba. Das eröffnet mir ja ziemlich viele Möglichkeiten. Hammer.:) Ich habe hier viel gelernt, auch im Hinblick wie ich eine Idee anders umsetzen kann und das mit meinen Ressourcen. Auch die schnelle Resonanz fand ich sehr gut.

Danke RPP63 du bist klasse .:)

@ weitere Thread-Antwort-Teilnehmer

Danke für eure Anteilnahme und eure Beiträge und euer Interesse.

@ all 

Ich finde die Community klasse und freue mich hier zu sein .:) Euch allen ein schönes Wochenende
Moin!
Ist wahrscheinlich das positivste Feedback, welches ich hier erhalten habe!  :19:
Nie war meine Signatur richtiger als heute!
Wenn es dann wirklich Hilfe zur Selbsthilfe war, klebe ich mir heute ein Fleißbienchen ins Forenheft …

Auch weitere Rückfragen sind willkommen.

Off topic:
Auch ich habe begonnen, meine ersten Projekte mittels VBA zu lösen.
Meine damalige Hilfe in Foren bezog sich ausschließlich auf VBA, weil ich die Sprachlogik halt besser verstanden habe.
Es gab auch spezielle Formel-Foren, die ich als diesbezüglicher Anfänger ehrfürchtig bestaunt habe.
… und dann hat mich der Ehrgeiz gepackt … Wink

VBA ist Klasse, weil es weitreichende Automatisierungsmöglichkeiten bietet, wird mittlerweile von mir aber nur eingesetzt, wenn es Zeitersparnis bringt, meine natürliche Faulheit unterstützt oder anders schlicht nicht funktioniert.

Gruß Ralf
Hallo RPP63,

ich habe mich mit den formeln auseinander gesetzt. Viele Youtube Videos angeguckt und selbst mal einfache formeln gebastelt, damit die syntax vertrauter wird (z.B. summewenns, etc...)
Aber die großen verschachtelten Formeln /Matrixen aus den Lösungsantworten verstehe ich nicht. 

Hier ein Beispiel

B16
{=WENNFEHLER(INDEX('BLATT 1 TÄGLICHE BUCHUNGEN'!A:A;KKLEINSTE(WENN(TEILERGEBNIS(3;INDIREKT("'BLATT 1 TÄGLICHE BUCHUNGEN'!"&ZEICHEN(SPALTE(BM1))&ZEILE($2:$1000)));ZEILE($2:$1000));ZEILE(A1)));"")}



-wennfehler, und hinten dran das ;"") ist klar, wenn ein Fehler auftaucht, einfach ignorieren

- jetzt fängt es an: Mit Index soll ein wert zurück gegeben werden aus Spalte A, 
  Zeile soll kkleinste sein, 
                                             wenn die bedingung teilergebnis (3 = anzahl, wenn ja dann weiter mit indirekt ...... häh

Diese Schrittfolge ab Index verstehe ich nicht.
Seiten: 1 2