Office: Gekennzeichnete Spalten mit WENN-Bedingung in Makro nach 5 Tabellen kopieren

Helfe beim Thema Gekennzeichnete Spalten mit WENN-Bedingung in Makro nach 5 Tabellen kopieren in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, Ich habe ein Makro, welches ich gerne ein wenig erweitern möchte, um mir bei der Weiterverarbeitung der Ergebnisse deutlich Zeit zu sparen. Da... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Afonia, 27. Dezember 2020.

  1. Afonia Neuer User

    Gekennzeichnete Spalten mit WENN-Bedingung in Makro nach 5 Tabellen kopieren


    Hallo,

    Ich habe ein Makro, welches ich gerne ein wenig erweitern möchte, um mir bei der Weiterverarbeitung der Ergebnisse deutlich Zeit zu sparen. Da dies meine sehr rudimentären Makrokenntnisse übersteigt, wende ich mich an dieses Forum.


    Sub Makro1()
    Dim y As Long, z As Long, i As Long
    Dim wsQuelle As Worksheet, wsZiel As Worksheet

    Set wsQuelle = ThisWorkbook.Worksheets("Aspects (new)")
    Set wsZiel = Workbooks("TESTED.xlsx").Worksheets("Tabelle1")

    Application.ScreenUpdating = False

    With wsQuelle
    .Columns("G").Copy
    wsZiel.Range("A1").PasteSpecial Paste:=xlPasteValues
    y = 2
    For z = 11 To 2010
    .Range("O9:S9").Value = .Range(Cells(z, "O"), Cells(z, "S")).Value
    For i = 23 To 121
    .Cells(i, "AA").Resize(, 2).Copy
    .Cells(10, "AC").PasteSpecial Paste:=xlPasteValues, Transpose:=True
    .Cells(i, "AC").Resize(, 4).Value = .Range("H24:K24").Value
    Next i
    .Range("AC10:AC11").Value = .Range("AC14:AC15").Value
    .Columns("H").Copy
    wsZiel.Cells(1, y).PasteSpecial Paste:=xlPasteValues
    .Range("AC10:AC11").Value = .Range("AD14:AD15").Value
    .Columns("I").Copy
    wsZiel.Cells(1, y + 1).PasteSpecial Paste:=xlPasteValues
    .Range("AC10:AC11").Value = .Range("AE14:AE15").Value
    .Columns("J").Copy
    wsZiel.Cells(1, y + 2).PasteSpecial Paste:=xlPasteValues
    .Range("AC10:AC11").Value = .Range("AF14:AF15").Value
    .Columns("K").Copy
    wsZiel.Cells(1, y + 3).PasteSpecial Paste:=xlPasteValues
    .Range("AC23:AF121").ClearContents
    y = y + 4
    Next z
    End With

    Workbooks("TESTED.xlsx").Save
    Application.CutCopyMode = False
    Set wsQuelle = Nothing: Set wsZiel = Nothing
    End Sub


    Bislang kopiert das Makro alle 4 einzeln optimierten Spalten H, I, J und K in der Datei TESTS.xlsm separat und der Reihe nach in die Datei TESTED.xlsx, wo ich anschliessend die Spalten je nach Resultat in weitere Dateien kopiere und damit nach einem bestimmten Kriterium sortiere. Mit der Absicht den Sortierprozess innerhalb des Makros zu automatisieren, habe ich in der Datei TESTS.xlsm in den Zellen H14:K14 eine Kategorisierung der Spaltenresultate mit den Buchstaben A bis E eingeführt (siehe die gelb gekennzeichneten Zellen im Anhang TESTS4.xlsx). Die mit A, B, C, D, oder E gekennzeichneten Spalten sollen nun jeweils in die Dateien TESTED_A.xlsx, TESTED_B.xlsx, TESTED_C.xlsx, TESTED_D.xlsx oder TESTED_E.xlsx kopiert werden. Also die Spalte mit der Kategorie A wird zu TESTED_A.xlsx kopiert, die Spalte mit der Kategorie B zu TESTED_B.xlsx, die Spalte mit der Kategorie C zu TESTED_C.xlsx, usw..

    Wichtig zum Verständnis ist dabei der Umstand, dass die Kategorien A bis E in den Zellen H14:K14 in der Datei TESTS.xlsm vor jedem Kopierschritt mithilfe von WENN-Bedingungen jeweils neu bestimmt werden. Jede zu kopierende Spalte H, I, J und K in der Datei TESTS.xlsm kann also in den Zellen H14, I14, J14 und K14 jeden der 5 Buchstaben A bis E annehmen.

    Meine konkrete Frage hierzu und die spezifischen Erläuterungen lauten also:
    • Wie kann ich im obigen Makro eine oder mehrere Bedingungen einführen, welche die Ergebniskategorie (A, B, C, D, oder E) der zu kopierenden Spalte in den Zellen H14:K14 erkennen und die jeweilige Spalte gemäss ihrer Ergebniskategorie in die korrekte Ergebnisdatei TESTED_A.xlsx, TESTED_B.xlsx, TESTED_C.xlsx, TESTED_D.xlsx oder TESTED_E.xlsx kopiert?
    • Analog zum bereits bestehenden Makro sollte die (Datums-)Spalte G zuerst in alle Ergebnisdateien TESTED_A.xlsx, TESTED_B.xlsx, TESTED_C.xlsx, TESTED_D.xlsx und TESTED_E.xlsx jeweils in die Zelle A1 kopiert werden. Die kopierten Spalten mit der jeweiligen Kategoriebezeichnung folgen dann jeweils in den Spalten B1, C1, D1, usw.
    • Im Endeffekt sind damit die resultierenden Spalten in der ursprünglichen Datei TESTED.xlsx auf die Dateien TESTED_A.xlsx, TESTED_B.xlsx, TESTED_C.xlsx, TESTED_D.xlsx und TESTED_E.xlsx aufgeteilt, wobei jede Ergebnisdatei in der Spalte A die dazugehörenden Kalenderdaten aufweist.
    • Die ursprüngliche Datei TESTED.xlsx wird damit obsolet.

    Wäre Euch sehr dankbar, wenn Ihr hierzu einen Vorschlag hättet.

    Viele Grüsse,
    Martin
     
  2. Hajo_Zi
    Hajo_Zi Erfahrener User
    ich kann Die Leidere nicht Helfen, da bei mir eine XLSX Datei kein Makro enthält.

    Der Name einer hochgeladenen Mappe wird im Beitrag automatisch angezeigt, sodass es bei Verwendung von aussagekräftigen Namen leichter fällt, sie später im Ablageordner wiederzufinden und sie gedanklich einem bestimmten Thema zuzuordnen. Namen wie Muster*, Test*, Mappe*, Beispiel*, Fehler*, Kalender*, UserForm* , Forum*, Excel* usw. sind so allgemein, dass eine Zuordnung zu einem Thema unmöglich gemacht wird.
    Es sollte ein aussagekräftiger Name sein.

    Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten ändern. Schaue Datei
    http://hajo-excel.de/gepackt/fremd/Datei_verschluesseln.zip

    Das ist nur meine Meinung zu dem Thema.

    Gekennzeichnete Spalten mit WENN-Bedingung in Makro nach 5 Tabellen kopieren GrußformelGekennzeichnete Spalten mit WENN-Bedingung in Makro nach 5 Tabellen kopieren Homepage
     
  3. Afonia Neuer User
    Hallo Hajo,

    Danke für Dein Feedback.

    Die Originaldatei mit dem Makro ist 42 MB gross und damit wahrscheinlich viel zu gross, um hier hochzuladen. Zudem enthält sie viele Elemente, die für mein spezifisches Problem unerheblich und damit nur verwirrlich sind. Deshalb habe ich eine aussagekräftige Beispieldatei TESTS4.xlsx hochgeladen, die - wie Du an der Endung richtig erkannt hast - kein Makro enthält. Falls Du mir wirklich helfen willst, findest Du das Makro direkt in meiner obigen Anfrage.

    Die Kernpunkte meiner Frage sind folgende:

    1) Wie kann ich im obigen Makro eine oder mehrere Bedingungen einführen, welche in der Ausgangsdatei wsQuelle = ThisWorkbook.Worksheets("Aspects (new)") die Ergebniskategorie (A, B, C, D, oder E) der zu kopierenden Spalte in den Zellen H14:K14 erkennen und die jeweilige Spalte gemäss ihrer Ergebniskategorie in die korrekte Ergebnisdatei TESTED_A.xlsx, TESTED_B.xlsx, TESTED_C.xlsx, TESTED_D.xlsx oder TESTED_E.xlsx kopiert?

    2) Analog zum bereits bestehenden Makro sollte die (Datums-)Spalte G zuerst in alle Ergebnisdateien TESTED_A.xlsx, TESTED_B.xlsx, TESTED_C.xlsx, TESTED_D.xlsx und TESTED_E.xlsx jeweils in die Zelle A1 kopiert werden. Die kopierten Spalten mit der jeweiligen Kategoriebezeichnung folgen dann jeweils in den Spalten B1, C1, D1, usw.

    Viele Grüsse,
    Martin
     
  4. Hajo_Zi
    Hajo_Zi Erfahrener User

    Gekennzeichnete Spalten mit WENN-Bedingung in Makro nach 5 Tabellen kopieren

    Hallo Martin,

    warum sollte ich Zeit investieren und Deine Datei unter XLSM Speichern und das Makro kopieren?
    Das möchtesyt Du ja nich mal.
    Ich bin dann raus.
    Viel Erfolg noch.

     
  5. RPP63
    RPP63 Erfahrener User
    Zum Crossposting habe ich Dich ja bereits im Nachbarforum aufmerksam gemacht.
    Zum Thema kurz nur so viel:
    Code:
     For z = 11 To 2010
            .Range("O9:S9").Value = .Range(Cells(z, "O"), Cells(z, "S")).Value
    Du schreibst also 2000mal unterschiedliche Werte in die 5 Zellen der Zeile 9
    Schließlich verbleiben die letzten Werte, nämlich die aus Zeile 2010 drin.
    Daher könntest Du Dir die Schleife schenken (passt ja auch zu Weihnachten).

    Weist Du grob, was Du da anstellst?

    Fragt sich Ralf
     
  6. Afonia Neuer User
    @ Ralf/RPP63:
    Falls ich mit meinem einmaligen Crossposting irgendwelche Forumsregeln verletzt haben sollte, wozu ich bislang keine Anhaltspunkte habe, kannst Du mir das gerne ganz normal und sachlich erklären. Das Verdrehen meiner Worte ("Spielchen") schadet nur Deiner eigenen Glaubwürdigkeit und Reputation. Schade eigentlich.
    Zu Deiner obigen Frage: Ich weiss haargenau, was ich da tue. Das Makro von Werner funktioniert übrigens tadellos. Mit meiner neuen Frage wollte ich einen anschliessenden, zeitaufwendigen Zwischenschritt bei der Weiterverarbeitung der Daten loswerden.
     
  7. steve1da Super-Moderator
    Hola,

    hast du bestimmt nur überlesen...
    Regeln

    Gruß,
    steve1da
     
    steve1da, 27. Dezember 2020
    #7
  8. Afonia Neuer User

    Gekennzeichnete Spalten mit WENN-Bedingung in Makro nach 5 Tabellen kopieren

    Hallo steve1da,

    Herzlichen Dank für den Link, den ich soeben zum ersten Mal gesehen und gelesen habe.

    Wünsche Dir frohe Festtage!

    Viele Grüsse,
    Martin
     
  9. RPP63
    RPP63 Erfahrener User
    Nun, "Spielchen" war ja kein Verdrehen, sondern ein SIC!
    Um meine Reputation zu retten: ;)
    Im Nachbarforum schreibst Du (in einem über-über-geordneten Thread), dass Dein Makro mehr als 18 Stunden läuft.
    MS-Office-Forum - Einzelnen Beitrag anzeigen - Zweite Schleife in Makro benötigt
    Nun kann man natürlich auf die Idee kommen, dass der Fisch vom Kopf her stinkt.
    Soll heißen, dass man jeden Prozessor zum Glühen bekommt, wenn man es nur ernsthaft will.
    Man könnte sich nun auf die Suche begeben und Deine ca. 50MB große (Original-)Datei nach Logikfehlern untersuchen.
    Vielleicht wäre sogar eine Lösung mittels Solver denkbar, ohne die Datei so aufzublähen, evtl. wäre sogar eine simple Was-Wäre-Wenn-Analyse hilfreich.
    Anyway:
    Du übersiehst, dass Du bereits Wochen mit Deiner Datei verbracht hast, Helfer in Foren jedoch nur einen kurzen Blick darauf werfen (wollen).
     
  10. RPP63
    RPP63 Erfahrener User
Thema:

Gekennzeichnete Spalten mit WENN-Bedingung in Makro nach 5 Tabellen kopieren

Die Seite wird geladen...
  1. Gekennzeichnete Spalten mit WENN-Bedingung in Makro nach 5 Tabellen kopieren - Similar Threads - Gekennzeichnete Spalten Bedingung

  2. Werte der letzten Zelle einer Spalte in mehreren Tabellenblättern ermitteln

    in Microsoft Excel Hilfe
    Werte der letzten Zelle einer Spalte in mehreren Tabellenblättern ermitteln: Hallihalllo, Ich sitze gerade an meine Bachelorarbeit und muss mittels VBA ein Auswertungsprogramm für erhobene Daten erarbeiten. Ich suche schon ewig im Internet nach dem passenden Code und...
  3. Wenn Wert in Spalte, dann kopiere bestimmte Zellen

    in Microsoft Excel Hilfe
    Wenn Wert in Spalte, dann kopiere bestimmte Zellen: Hallo zusammen Ich versuche einen Planer zu erstellen. Dazu müsste ich folgende Formel/ Makro erstellen, kann dies jedoch mit meinen Excelkünsten nicht: Falls der Wert in Spalte "A" "1" hat,...
  4. Text ab dem letzten Leerzeichen nach 40 Zeichen trennen und den restlichen Text in die nächste Spalt

    in Microsoft Excel Hilfe
    Text ab dem letzten Leerzeichen nach 40 Zeichen trennen und den restlichen Text in die nächste Spalt: Hallo zusammen, folgendes Problem habe ich. Ich möchte gerne einen Text ab dem letzten Leerzeichen nach 40 Zeichen trennen und den restlichen Text dann automatisch in die nächste Spalte...
  5. Über bedingte Formatierung Spalten verbinden

    in Microsoft Excel Hilfe
    Über bedingte Formatierung Spalten verbinden: Hallo! Ich bin mir nicht sicher, ob sowas mit Excel eigentlich möglich ist, aber ihr könnt mir das bestimmt sagen. Leider konnte ich sonst nichts finden. Ich möchte einen Dienstplan erstellen....
  6. Mit WENN-Bedingung in Makro gekennzeichnete Spalten in richtige Tabelle kopieren

    in Microsoft Excel Hilfe
    Mit WENN-Bedingung in Makro gekennzeichnete Spalten in richtige Tabelle kopieren: Hallo, Ich habe ein Makro, welches ich gerne ein wenig erweitern möchte, um mir bei der Weiterverarbeitung der Ergebnisse deutlich Zeit zu sparen. Da dies meine sehr rudimentären Makrokenntnisse...
  7. Überprüfen von gekennzeichneten e-Mail-Nachrichten

    in Microsoft Outlook Tutorials
    Überprüfen von gekennzeichneten e-Mail-Nachrichten: Überprüfen von gekennzeichneten e-Mail-Nachrichten Outlook für Microsoft 365 Outlook 2019 Outlook 2016 Outlook 2013 Outlook 2010 Mehr... Weniger...
  8. Gelbe Hinterlegung bei gekennzeichneten Nachrichten ist nicht mehr vorhanden

    in Microsoft Outlook Hilfe
    Gelbe Hinterlegung bei gekennzeichneten Nachrichten ist nicht mehr vorhanden: Hallo, ich habe leider ein kleines Problem mit meinem Outlook 365 welches leider seit geraumer Zeit auftritt. In der Vergangenheit wurden gekennzeichnete Nachrichten immer leicht gelb...
Schlagworte:
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden