Daten auf andere Blätter verteilen, per VBA
#1
Hallo,

in der angehängten Datei habe ich eine reale Situation vereinfacht "nachgebaut":

Ein "Administrator" verteilt Geld an 3 Personen P1 bis P3.
Dieses Geld schreibt er im Blatt "Verteilung" ein.

Was ich erreichen möchte:
sobald er eine Operation erfasst, soll sie, möglichst chronologisch (ich habe im Blatt "Verteilung" die Datums durcheinandergebracht) in das Blatt der betreffenden Person kopiert werden, so wie ich es manuell getan habe.
Mit freundlichen Grüßen

Alooha


Angehängte Dateien
.xlsx   Verteilung.xlsx (Größe: 11,61 KB / Downloads: 9)
Top
#2
Hallo

hier die Beispieldatei zurück.  Würde mich freuen wenn die Lösung so perfekt ist ....
Es gibt eine Prüfung gegen versehentliche Doppeleingaben! Geprüft wird aber NUR die letzte Eingabe!

mfg Gast 123


Angehängte Dateien
.xlsm   Verteilung F.xlsm (Größe: 18,93 KB / Downloads: 11)
Top
#3
Hallo Gast,
vielen Dank, es funktioniert perfekt.
Meine Herausforderung ist jetzt, den Code so weit zu verstehen, dass ich ihn an meine reale Situation anpassen kann, in der die Daten in anderen Zeilen und Spalten eingegeben und kopiert werden. Ich bedaure, mein Beispiel nicht dementsprechend aufgebaut zu haben.
Ich werde mich mal an die Arbeit machen.
Einen schönen Abend
Alooha
Top
#4
Hallo

der Code ist sehr simpel, aber du musst dazu die Funktion von "Blatt.Cells(lz1, 1)" verstehen. Ich erklaere es dir!
Bei Cells gilt Cells(z, s),  dabei ist z=Zeile und s=Spalte als Zahlenangabe! Die Spalte kann auch als Buchstabe angegeben werden Cells(100, "AB")
Das entspricht der Zelle: Range("AB100"). Die Variable ist die LastZell in Spalte A, durch End(xlUp) von unten gesucht.  Ich hoffe es hilft dir den Code zu versehen und ihn selbst anzupassen.

Im Zweifelsfall mit einem Test Makro s. unten prüfen wo der Cursor stehen bleibt. So versteht man's am schnellsten.

mfg Gast 123

Code:
Sub test()
Dim z As Long, sp As Variant
 z = 10   'Zeile 10
 sp = 3   'Spalte 3 = C oder "C" angeben
 Cells(z, sp).Select
End Sub
Top
#5
Hallo,

dass du den Code als sehr simpel bezeichnest, beweist dass du ein Experte in VBA bist!
Es ist nämlich nicht nur die Sache mit Cells die ich nicht verstehe.
Ich verstehe u.a. auch nicht, was Target darstellt, da ich nicht erkenne, mit welchem Bereich das verknüpft ist.

Ich stelle fest, dass ich mich, als ich die Beispieldatei erstellt habe, etwas zu weit von der realen Situation entfernt habe (andere Bereiche). Falls ich die selben Bereiche benutzt hätte bräuchte ich den Code jetzt nicht anzupassen, aber ich hatte gehofft, ihn besser zu verstehen, in dem Sinn dass Bereiche definiert wären, die ich nur zu ändern bräuchte.

Außerdem sollte die Beispieldatei eine erste Etappe von zwei (hatte ich leider nicht erwähnt) darstellen, wobei die zweite im Kopieren der Ausgaben der einzelnen Personen in ein gemeinsames Blatt besteht.

Ich habe jetzt die reale Datei genommen, und sie anonymisiert.

Da ich einige Kleinigkeiten geändert habe im Vergleich zur Originaldatei, habe ich die Datei an die Verantwortliche geschickt zwecks Begutachtung. Ich warte auf ihre Antwort und lade sie dann, falls du gewillt bist, weiterzumachen, hier hoch.

MfG
Alooha
Top
#6
Hallo

okay, dann warte ich mal ab, bin aber nicht jeden Tag im Forum. Kann 2-3 Tage dauern bis ich antworte ...

mfg Gast 123
Top
#7
Hallo,
das ist kein Problem.
Sobald ich eine Rückmeldung habe poste ich die Datei.
MfG
Alooha
Top
#8
Hallöchen,

die Verantwortlichen lassen sich aber reichlich Zeit :20:
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#9
Hallo "schauan",

es freut mich, dass du dir Sorgen darum machst!
Ich habe sie erst am Donnerstag gesehen und tanze auch mal wieder auf mehreren Hochzeiten.
Ausserdem habe ich weiter an der Datei gearbeitet.
Ich werde sie bald posten und danke dir schon jetzt für das das du zum Projekt beitragen wirst.
MfG
Alooha
Top


Gehe zu:


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