Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1884to1888
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

automatisches kopieren

automatisches kopieren
30.05.2022 11:05:11
Ruben
Hallo alle miteinander, ich habe ein Excel Blatt mit Mitarbeiterdaten [dbPersonal]. in Spalte H2:H1000 befindet sich der Name und in Spalte AX2:AX1000 befindet sich das dazugehörige aktuelle Gehalt. Wenn sich nun in der Spalte AX2:AX1000 ein Wert ändert so soll dieser im Blatt [Gehaltsentwicklung] unter dem entsprechendem Namen in der nächst freien Spalte (nach rechts) der neuen Wert erfassen werden, sowie in der nächsten Spalte das Datum mit Monat und Jahr der Änderung. Wie mach ich das?

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

Betreff
Datum
Anwender
Anzeige
AW: automatisches kopieren
30.05.2022 11:58:56
GerdL
Moin Ruben,
die Zeile ist im Blatt Gehaltsentwicklung anhand des Mitarbeiternamens in welcher Spalte zu ermitteln?
Das Änderungsdatum ist in welche Spalte dieser Tabelle einzutragen?
Was soll passieren wenn ein Eintrag in dbPersonal Spalte AX wieder entfernt wird?
Gruß Gerd
AW: automatisches kopieren
30.05.2022 12:03:01
UweD
Hallo
- Rechtsclick auf den Tabellenblattreiter "dbPersonal"
- Code anzeigen
- Diesen Code rechts reinkopieren
- Bei Änderungen in AX erfolgt das Auslösen

Private Sub Worksheet_Change(ByVal Target As Range)
Dim RNG As Range, Zeile As Long, SpName As Integer, SpSuch As Integer, SpalteNeu As Integer
Dim NName As String, Tb1 As Worksheet, Tb2 As Worksheet
Set Tb1 = Sheets("dbPersonal")
Set Tb2 = Sheets("Gehaltsentwicklung")
SpName = 8 'Namen in Spalte H
SpSuch = 1 'Namen stehen in Spalte A
Set RNG = Tb1.Range("AX2:AX1000")
If Not Intersect(RNG, Target) Is Nothing Then
If Target  "" Then
NName = Tb1.Cells(Target.Row, SpName)
If NName  "" And WorksheetFunction.CountIf(Tb2.Columns(SpSuch), NName) > 0 Then
'Name gefunden in Zeile
Zeile = WorksheetFunction.Match(NName, Tb2.Columns(SpSuch), 0)
'letzte Spalte einer Zeile
SpalteNeu = Tb2.Cells(Zeile, Tb2.Columns.Count).End(xlToLeft).Column
Tb2.Cells(Zeile, SpalteNeu + 1) = Target
Tb2.Cells(Zeile, SpalteNeu + 2) = Format(Date, "DD.MM.YYYY")
Else
MsgBox "Name unbekannt"
End If
End If
End If
End Sub
LG UweD
Anzeige
AW: automatisches kopieren
31.05.2022 13:51:27
Ruben
Hallo UweD - recht herzlichen Dank für den Code, der toll funkt. leider wird das heutige Datum genommen und nicht das, welches erfasst wird und in der Spalte AZ hinterlegt wird (das ist das Datum ab wann die Gehaltserhöhung in Kraft tritt)
AW: automatisches kopieren
31.05.2022 14:23:08
UweD
Hallo
das stand aber auch nirgendwo..
ändere die eine Zeile so ab.

diese Zeile ändern:
Tb2.Cells(Zeile, SpalteNeu + 2) = Format(Date, "DD.MM.YYYY")
in
Tb2.Cells(Zeile, SpalteNeu + 2) = Format(Target.Offset(0, 2), "DD.MM.YYYY")
Wichtig: Bei Neueingabe solltest du zuerst das Datum in AZ eintragen und dann erst das Gehalt
LG UweD
Anzeige
AW: automatisches kopieren
07.06.2022 13:47:08
Ruben
Ich hätte da noch eine zusätzliche Frage, die erst jetzt aufgetreten ist. Der Stundenlohn [AY2:AY1000] soll auch mitgenommen werden und sollte dann in die 3 Spalte kommen.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige