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.

Übergreifendes Makro für verschiedene Blätter erstellen
#1
Hallo zusammen,

auch ich hab dann mal ne Frage bzw ein Problem und Hoffe das mir jemand helfen kann.

Ich versuche ein Macro zu bauen das folgendes Tut:


Ich habe eine Übersichtstabelle ( Blatt1 ) mit vielen Zeilen.
mein Marcro soll nun folgendes tun.
Eine Komplette Zeile inkl. Inhalt auf ein neues Blatt (Blatt2) kopieren wenn in einer Spalte dieser Zeile auf (Blatt1) ein bestimmter Wert steht.
(z.B. Spalte E  Wert =20)
Somit habe ich danach ein 2. Blatt wo alle Zeilen aus (Blatt 1) untereinander stehen mit diesem Wert haben anfangen soll es auf Blatt 2 aber erst ab Zeile 3 damit ich da drüber in Zeile 1 noch überschriften setzten kann.
Wenn möglich würde ich sogar den Macro dahingehend erweitern, dass wenn:
der Wert (30) in der Spalte steht wird die Zeile auf Blatt 3 Kopiert. Steht der Wert (40) in der Spalte wird die Zeile auf Blatt 4 Kopiert und das gleiche für (50) auf Blatt 5

oder muss ich hierfür jeweils einen eigenen Macro schreieben

ich hoffe ich habe mich einigermassen verständlich ausgedrückt und jemand kann mir helfen oder im besten fall sogar den syntax für den Macro mir geben

Ich danke euch

Ich hoffe sehr das Sie mir helfen können.
LG Benjamin Sill
Antwortento top
#2
Hallo Benjamin,

du hast das zwar alles hübsch umrissen - aber ohne eine Beispielmappe (kein Bild!!!) wirst du hier maximal Anregungen erhalten, aber mit Sicherheit keine Lösung. Niemand hat Lust, aufgrund deiner etwas  schwammigen Angaben deine Datei nachzubauen.
Schöne Grüße
Berni
Antwortento top
#3
entschuldigung das war mir so nicht klar

anbei habe ich eine Musterdatei beigefügt


Angehängte Dateien
.xlsx   Demo.xlsx (Größe: 11,56 KB / Downloads: 6)
Antwortento top
#4
Hi Benjamin,

muss es unbedingt VBA sein? Falls ja, vergiss meinen Vorschlag. Dabei kann ich dir dann aber nicht helfen.

Mein Formelvorschlag, vorausgesetzt deine angegebene Version 16.17 (was immer das auch heißen mag) ist Excel >= XL2010

Arbeitsblatt mit dem Namen 'Dantenbank'
CDEFGHIJKLMNOPQ
1Überschrift 3Überschrift 4Überschrift 5Überschrift 6Überschrift 7Überschrift 8Überschrift 1Überschrift 2Überschrift 3Überschrift 4Überschrift 5Überschrift 6Überschrift 7Überschrift 8
2aaaaarrghahoiape20bbbbbbbbbbbblobblubblabla030
3bbbblobblubblabla30ffffffffffacettenreichefehlerfallen auf030
4ccccäsarscappuccinois cold50
5dddddusselsdaisyduckt sich40
6eeeeeusebiaechauffiertesich einst20
7ffffacettenreichefehlerfallen auf30
8gggganzgroßesg(k)ino50
9hhhhansholthilfe40

ZelleFormel
J2=WENNFEHLER(INDEX(A:A;AGGREGAT(15;6;ZEILE($H$1:$H$9)/($H$1:$H$9=30);ZEILE(A1)));"")
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Der besseren Übersicht wegen habe ich meinen Vorschlag auf das gleiche Tabellenblatt geschrieben; du musst halt die Formel anpassen. Du brauchst sie nur einmal eintragen (im Beispiel in J2) und nach rechts und nach unten ziehen. Zudem könntest du, anstelle die 30 fest in der Formel zu verdrahten, diese in eine Zelle schreiben und dich darauf beziehen. Dadurch ist sie flexibel und kann auch für andere Kriterien eingesetzt werden.

Nachtrag:
Die Nullen, die wegen der leeren Zellen geschrieben werden, kannst du, wenn sie stören, mit einer benutzerdefinierten Formatierung ausblenden:
Code:
0;;
Gruß Günter
Misserfolg ist eine Chance, es beim nächsten Mal besser zu machen.
(Henry Ford) www.sprueche-zum-nachdenken.eu
Antwortento top
#5
Hi,

(22.09.2018, 05:44)WillWissen schrieb: du musst halt die Formel anpassen.

ohne sie manuell anpassen zu müssen, geht das auch ganz einfach durch Ausschneiden STRG-X und Einfügen STRG-V in das andere Tabellenblatt.

Arbeitsblatt mit dem Namen 'Tabelle2'
ABCDEFGH
1Überschrift 1Überschrift 2Überschrift 3Überschrift 4Überschrift 5Überschrift 6Überschrift 7Überschrift 8
2bbbbbbbbbbbbbbbbbbbbb030
3fffffffffffffffff030
4
5
6
7
8
9
10

ZelleFormel
A2=WENNFEHLER(INDEX(Datenbank!A:A;AGGREGAT(15;6;ZEILE(Datenbank!$H$1:$H$10)/(Datenbank!$H$1:$H$10=30);ZEILE(Datenbank!C1)));"")
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

PS: es heißt "Datenbank" 21
Antwortento top
#6
Reicht dir die Formellösung oder muss es VBA sein?
Schöne Grüße
Berni
Antwortento top
#7
Hallo,

für mich stellt sich (wieder einmal) die Frage, warum nicht einfach das Tabellenblatt Datenbank gefiltert wird.
Viele Grüße
Klaus-Dieter
Antwortento top
#8
Hi Klaus-Dieter,

ja, nach Spalte "Überschrift 8".
Antwortento top


Gehe zu:


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