Anzeige
Archiv - Navigation
1432to1436
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA - prüfen, kopieren und einfügen

VBA - prüfen, kopieren und einfügen
22.06.2015 10:48:23
Alex
Hallo zusammen,
Ich bin ganz neu und brauche für meine Arbeit folgende Hilfestellung, die ich mit normalen Funktionen nicht lösen kann.
Insgesamt müssen drei Sachen geprüft werden und bei Prüfung gewisse Aktionen getätigt werden.
1. Wenn in Spalte A die Zahl 10 steht dann kopiere die Zeile drei mal, ändere den Wert 10 in 20,30 und 40 und verteile den dazugehörigen Wert in Spalte E auf die drei neu generierten Zeilen mit dem Schlüssel 3/6. 2/6, 1/6 ebenfalls in Spalte E.
2.Wenn in Spalte B die ersten zwei Stellen die Zahl "10" herauszulesen ist, dann kopiere die Zeile drei mal, ändere die ersten zwei Stellen in 20,30 und 40 (die restlichen 6 Stellen danach bleiben unberührt) und verteile den dazugehörigen Wert in Spalte E auf die drei neu generierten Zeilen mit dem Schlüssel 3/6. 2/6, 1/6 ebenfalls in Spalte E.
3. Wenn in Spalte A 528 steht, dann kopiere die Zeile drei mal, ändere den Wert 10 in 20,30 und 40 und verteile den dazugehörigen Wert in Spalte E auf die drei neu generierten Zeilen mit einem von mir jeweils einmalig (je Makro-Ausführung) vorgenommenen Schlüssel.
Sind diese Bedingungen nicht gegeben, übernehme diese Zeile einfach. Am besten wäre es, wenn dies alles in einem neuen Tabellenblatt geschieht.
Über Hilfe wäre ich unglaublich dankbar. Falls ich etwas undeutlich geschildert habe, bitte ich das mit meiner Unerfahrenheit bei solchen Problemstellungen zu entschuldigen :-P
Beste Grüße
Alex

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - prüfen, kopieren und einfügen
22.06.2015 12:26:49
Armin
Hallo Alex,
zum ersten warum keine Demo-Datei? Zum zweiten ich habe keine Lust die Datei nachzubauen die bei Dir schon existiert.

AW: VBA - prüfen, kopieren und einfügen
23.06.2015 08:30:03
Armin
Hallo Alex,
Frage was heißt "dazugehörigen Wert" Spalte D oder G?
1. Wenn in Spalte A die Zahl 10 steht dann kopiere die Zeile drei mal, ändere den Wert 10 in 20,30 und 40 und verteile den dazugehörigen Wert in Spalte E auf die drei neu generierten Zeilen mit dem Schlüssel 3/6. 2/6, 1/6 ebenfalls in Spalte E.
Gruß Armin

Anzeige
AW: VBA - prüfen, kopieren und einfügen
23.06.2015 09:19:37
Armin
Hallo Alex,
weitere Fragen können die Ereignisse in einer Zeile mehrfach auftreten?
D.h.: Spalte A=10 , Spalte B=10334 ? zwei Ereignisse in einer Zeile?
Gruß Armin

AW: VBA - prüfen, kopieren und einfügen
23.06.2015 10:31:14
Alex
Hallo Armin,
vielen lieben Dank erstmal, dass du dich dieser Fragestellung annimmst und mir helfen möchtest :-)
Ich Trottel habe die Demo-Datei nicht 100% gleich der Beschreibung aufgebaut-.-
Also mit der in der Beschreibung erwähnten "Spalte E" ist in der Demo-Datei die Spalte G gemeint, das hast du schon richtig erkannt. Und mit Spalte A ist dann Spalte D gemeint.
Mit dem "dazugehörigen Wert" ist Spalte G gemeint. Ursprung war z.B. 50 in Spalte G, daraus werden jetzt in einem neuen Tabellenblatt drei Zeilen, die sich auf 25(50*3/6), 16,67 (50*2/6) und 8,33 (50*1/6)in Spalte G aufteilen. (natürlich müssen noch die anderen Spalten der drei Zeilen mitkopiert werden und in Spalte D noch die Änderung vorgenommen werden. (aus 10 wird 20,30 und 40)
Zu deiner anderen Frage:
In Spalte D kann die "10" sowohl alleine stehen (Spalte C ist leer) als auch in Verbindung mit der 8-stelligen Nummer in Spalte C, bei der an Stelle 3 und 4 die ebenfalls zu berücksichtigende Nummer "10" stehen könnte.
Somit sind m.E. zwei Ereignisse in einer Zeile möglich.
Ich hoffe, ich konnte meine wirren Gedanken klar genug zum Ausdruck bringen.
Beste Grüße
Alex

Anzeige
AW: VBA - prüfen, kopieren und einfügen
23.06.2015 13:16:12
Armin
Hallo Alex,
noch nicht ganz leider wiederspricht sich eine Aussage.
Im Orig. heißt es 2.Wenn in Spalte B die ersten zwei Stellen die Zahl "10" herauszulesen ist
im zweiten Teil
auch in Verbindung mit der 8-stelligen Nummer in Spalte C, bei der an Stelle 3 und 4 die ebenfalls zu berücksichtigende Nummer "10" stehen könnte
Mal abesehen von der Spalte B & C Verwechselung stimmt auch das andere nicht überein. Steht die Zahl 10 nun an der Stelle 1+2 oder 3+4?

AW: VBA - prüfen, kopieren und einfügen
23.06.2015 13:37:47
Alex
Hallo Armin,
eigentlich dachte ich dies in meiner Nachricht untergebracht zu haben, scheinbar war es der Post, der durch eine Zeitüberschreitung nicht gepostet wurde.
Genau, nicht Stelle 1+2, sondern Stelle 3+4 ist wichtig. Genauso wie Spalte C von Bedeutung ist und nicht wie irrtümlicherweise im Ursprung geschildert Spalte B.
Daaaanke!

Anzeige
AW: VBA - prüfen, kopieren und einfügen
23.06.2015 14:33:14
Armin
Hallo Alex,
also sehen wir mal ob das so geht was Du Dir so vorgestellt hast.
Die Tabelle "Analyse" habe ich neu angelegt. Irgent wo hin muss das Ganze ja.
Also teste mal.
https://www.herber.de/bbs/user/98407.xlsm
Gruß Armin

AW: VBA - prüfen, kopieren und einfügen
23.06.2015 15:37:45
Alex
Hallo Armin,
Das sieht schon wirklich super aus - ich bin begeistert :-)
Großes Lob! Würde gerne alles verstehen, aber bei manchen Zeilen komme ich leider nicht ganz hinterher...(Hast du eine Empfehlung für ein nettes Buch oder ähnliches?)
Was noch nicht ganz passt, sind die Stellen 3+4 der 8-stelligen Nummern in Spalte C, die, wenn eine 10 dort ersichtlich ist, ebenfalls wie die 10 in Spalte D, in 20,30 und 40 angepasst werden müssen.

Anzeige
AW: VBA - prüfen, kopieren und einfügen
23.06.2015 16:48:13
Armin
Hallo Alex,
kann ich nicht nachvollziehen, bei mir funktioniert die Selection z.Bsp. 20109000 da wird die 10 erkannt!
Sie mus jedoch an der 3+4 Stelle stehen!
Gruß Armin

AW: VBA - prüfen, kopieren und einfügen
23.06.2015 16:53:39
Alex
Hallöchen,
abolut richtig, die Zahl soll jedoch nicht nur erkannt werden, sondern auch auf 20,30 und 40 an der 3+4 Stelle anstatt der dort gefundenen 10 angepasst werden.
Beste Grüße
Alex

AW: VBA - prüfen, kopieren und einfügen
23.06.2015 18:34:33
Armin
Hallo Alex,
so war das mir leider nicht klar das die Nummer selbst angepasst werden soll!
Aber mit mir kann man ja "reden".
Also ich habe auch diesen Part noch eingebaut. Schaun wir mal.
https://www.herber.de/bbs/user/98414.xlsm
schönen Abend und Grüße aus Nürnberg
Armin

Anzeige
AW: VBA - prüfen, kopieren und einfügen
24.06.2015 08:19:13
Alex
Hallo Armin,
danke für die Anpassung. Bin mir nicht sicher, ich glaube aber, dass dies leider nur für die ersten Zeilen greift, da etwas weiter unten weiterhin die 10 in Spalte C an der 3+4 Stelle steht, anstatt 20,30,40 wie in Spalte D. Siehe Bild.
Userbild
Beste Grüße aus dem Ruhrgebiet
Alex

AW: VBA - prüfen, kopieren und einfügen
24.06.2015 11:40:24
Armin
Hallo Alex,
ok jetzt habe ich noch eine Änderung vorgenommen. Das kam zu stande das die erste 10 Spalte D höhere Prio hatte und damit die Änderung nicht mehr vorenommen wurde. Ich frage jetzt anders ab. Schau mal ob jetzt alles richtig läuft.
https://www.herber.de/bbs/user/98429.xlsm
Gruß Armin

Anzeige
AW: VBA - prüfen, kopieren und einfügen
26.06.2015 14:18:36
Alex
Hallo Armin,
danke das funktioniert jetzt. Allerdings ist mir bei der Prüfung folgende Problematik aufgefallen.
Eigentlich soll in Spalte D geprüft werden ob Nummer 528 vorliegt. Ist dies der Fall soll die in der gleichen Zeile stehende Zahl mit einem von mir einzugebenden Schlüssel multipliziert bzw. dividiert werden.
Daher zuerst die Frage, ob bei der Abfrage dividiert oder multipliziert wird. Soll ich also 0,5 0,4 0,1 oder 5 4 1 als Verteilungsschlüssel nehmen?
Bei Eingabe des Schlüssels 0,5, 0,4, 0,1 wird bei der Abfrage die Spalte G übernommen und für 528 steht die Zahl 40 . Für die anderen beiden, also 20 und 30, erfolgt eine Multiplikation des Ursprungswertes in Spalte G.
Vielen Dank und schöne Grüße
Alex

Anzeige
AW: VBA - prüfen, kopieren und einfügen
26.06.2015 16:17:09
Armin
Hallo Alex,
zur Zeit wird multipliziert. Wenn man div. müssen zusätzliche Abfragen eingebaut werden! Wegen null.
Wert1 bezieht sich auf 20, Wert2 auf 30 usw.
Falls die Zuordnung anders sein soll kannst Du das ja leicht ändern. Schau die den Code an.
frm_Faktor.W1.Value ist Wert1 und wird bei 20 benutzt.
Falls Du nicht klar kommst melde Dich.
Gruß Armin

377 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige