Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA: Wert kopieren wenn Bedingungen erfü

VBA: Wert kopieren wenn Bedingungen erfü
17.07.2021 13:47:49
Patrick
Hallo zusammen,
der Titel hier hört sich wahrscheinlich total einfach an, nichtsdestotrotz habe ich trotz Suche und herumprobieren keine zufriedenstellende Lösung hinbekommen. Daher hoffe ich, das jemand mir hier helfen kann.
Aufgabenstellung:
Der Wert (Spalte D) einer Anforderung soll in eine (Ziel-)Zelle kopiert werden, wenn bestimmte Bedingungen erfüllt sind.
Die Ziel-Zelle liegt in einem Kalender (Spalte F bis AE) und jede Anforderung (Spalte A) hat ein Datum (Spalte C). Nun soll der Wert (Spalte D) 3 Monate nach dem Datum in den Kalender geschrieben werden. Die Zielzelle darf aber nicht nach Spalte Q sein, da hier das neue Jahr anfängt.
Bedingung 1: Die Anforderungsnr. (Spalte A) fängt mit einem B oder einem AB an.
Bedingung 2: Der Wert (Spalte D) der Anforderung liegt zwischen 1 und 1000.
Bedingung 3: Die Zielzelle liegt zwischen Spalte F und Q (das Jahr 2021).
Werden die 3 Bedingungen nicht erfüllt, soll mit dem Wert nichts passieren und die nächste Zeile soll geprüft werden.
Ich habe dies in einer Beispieltabelle dargestellt, die Originaldatei hat zur Zeit 3400 Zeilen da kommen immer mal welche dazu bzw. welche entfallen.
Da in die Spalten E bis AE manuell Werte eingetragen werden (bei allen Anforderungen über 1000€), kann ich die Zellen nicht verformeln und daher soll dies über VBA laufen.
Es ließt sich nicht kompliziert, ist es für mich aber. Vielleicht hat jemand eine Lösung für mich?
Beispielmappe:
https://www.herber.de/bbs/user/147170.xlsm
Viele Grüße,
Patrick
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
kein Formellösung
17.07.2021 14:12:03
Hajo_Zi
das wurde schon im anderen Forum erstellt.
GrußformelHomepage
Anzeige
AW: VBA: Wert kopieren wenn Bedingungen erfü
17.07.2021 14:15:27
Patrick
@Hajo_Zi: Ich hab meinen Post in dem anderen Forum auf erledigt gesetzt, kann dort auch gelöscht werden.
AW: VBA: Wert kopieren wenn Bedingungen erfü
17.07.2021 18:46:58
JoWE
Hallo Patrick,
versuch mal:

Sub auswertung()
Dim b1 As Boolean 'Wert in Spalte A beginnt mit B oder mit AB, dann ist b1 wahr
Dim b2 As Boolean 'Wert in Splate 4 ist zwischen 0,01 und 1000, dann ist b2 wahr
Dim b3 As Boolean 'Monat aus Spalte C plus 7 Monate ist noch in 2021, dann ist b3 wahr
Dim ze As Long 'Zeilenzähler
For ze = 7 To Cells(Rows.Count, 1).End(xlUp).Row
b1 = Left(Cells(ze, 1).Text, 1) = "B" Or Left(Cells(ze, 1).Text, 2) = "AB"
b2 = Cells(ze, 4).Value > 0.01 And Cells(ze, 4).Value 
Gruß
Jochen
Anzeige
AW: VBA: Wert kopieren wenn Bedingungen erfü
18.07.2021 11:57:58
Patrick
Hallo Jochen,
vielen Dank für deinen Code. Ich habe ihn an einer Stelle angepasst und es funktioniert wie ich möchte, super.
Eine Frage nur zum Verständnis. Die Prozedur ist ja auch mit mehreren If und Then möglich, du hast die Umsetzung mit Boolean gewählt.
Einfach nur so weil es passt oder hat dies auch Vorteile im Bezug auf Speicherplatz oder ähnliches?
Auf jeden Fall wird nur eine If Then Zeile benötigt ;)
Die Zeile For ze = 7 To Cells(Rows.Count, 1).End(xlUp).Row funktioniert auch ohne die Variablendefinition Dim ze As Long.
Hat die Definition auch den Hintergrund Speicherplatz oder ähnliches?
Einen schönen Sonntag und viele Grüße,
Patrick
Anzeige
AW: VBA: Wert kopieren wenn Bedingungen erfü
18.07.2021 14:02:53
JoWE
Hallo Patrick,
die Dimensionierung der Variablen mache ich eigentlich immer.
Der Code ist so erstellt, damit er möglichst einfach ist und auch einfach zu verstehen ist.
Gruß
Jochen
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige