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

Alle zwei Jahre Gehaltsstufe erhöhen und..........

Alle zwei Jahre Gehaltsstufe erhöhen und..........
17.06.2019 07:53:18
STeve
Guten Morgen liebe Leute.
Hätte mal wieder ein Problem/Bitte an euch:
Ideal wäre eine Lösung in VBA!!!
https://www.herber.de/bbs/user/130434.xls
Die Mitarbeiter der Firma steigen alle zwei Jahre in der Gehaltsstufe. Gehaltsstufen gehen von 1,2,3,4.....bis D2. (siehe Spalte P)
Sobald die Gehalstsstufe - D2 erreicht wurde ist natürlich keine Steigerung mehr möglich = dann soll sich einfach die Zelle in Spalte K entleeren.
Beim Öffnen der Datei soll sich die Gehaltsstufe in Spalte J bei Erreichen des Datums (nächste Vorrückung in Spalte K) erhöhen und die nächste Vorrückung soll sich wieder um zwei Jahre nach hinten erhöhen.
Besten Dank und mfg
STeve

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Alle zwei Jahre Gehaltsstufe erhöhen und..........
17.06.2019 08:45:39
Daniel
Hi
könnt ihr das Einstellungsjahr noch mit hinzunehmen und aus D1 und D2 noch 20 und 21 machen?
dann könnt ihr die Gehaltsstufe doch direkt berechnen und braucht kein VBA dafür:
=Min(21;Ganzzahl(DateDif(Einstellungdatum;Heute();"Y")/2)+1)
Gruß Daniel
Das geht leider nicht............offen
17.06.2019 09:11:10
STeve
Guten Morgen lieber Daniel.
Danke vorab für deine schnelle Antwort.
Aus den Begriffen/Gehaltsstufen D1 und D2 kann ich auf keinen Fall 20/21 machen/ändern - ich muss mit diesen Begriffen arbeiten.
Im Endeffekt werden die Begriffe in Formulare eingetragen - geht weiter an verschiedene Abteilungen - wo eben eine Zulage errechnen wird.
Bitte um Lösungen und verbleibe
mfg STeve
Anzeige
AW: Das geht leider nicht............offen
17.06.2019 09:15:23
Daniel
HI
dann berechne die Gehaltsstufe nach diesem Schema:
=Index(Zellbereich, in dem die Gehaltsstufen von 1-D2 untereinander aufgelistest sind;Min(21; Ganzzahl(DateDif(Einstellungdatum;Heute();"Y")/2)+1))
Gruß Daniel
AW: Das geht leider nicht............offen
17.06.2019 09:36:54
STeve
Hi Daniel
Deine Formel funktioniert aber:
a.)ich weiß von allen Mitarbeitern auf die Schnelle die akt. Gehaltsstufe und die nächste Vorrückung (weil das auf ihren monatlichen Lohnzetteln steht)- darum wurde die Liste so erstellt........ihr Einstellungsdatum zu erheben ist hingegen zu viel Arbeit (Wechsel in den Abteilungen, Hunderte Mitarbeiter usw.)
b.) ich möchte auch immer in der Datei den nächsten (aktualisierten) Vorrückungstermin sehen.
Bitte weiter um Lösungen.
mfg
Anzeige
AW: Das geht leider nicht............offen
17.06.2019 10:03:45
Daniel
Hi
naja, das virtuelle Einstellungsdatum kannst du doch berechnen, im Prinzip ergbit sich das aus dem Datum der nächsten Vorrückung abzüglich der Gehaltsstufe * 2 in Jahren.
der nächste Vorrückungstermin lässt sich auch berechnen.
wenn du unbedingt ne VBA-Lösung willst, habt ihr bei euch jemanden, der genügend VBA kann, um das Markro zumindest zu pflegen und Anpassungen an Änderungen einzuarbeiten?
Ist ja nicht ganz unwichtig und so wie du fragst, brauchst du eigentlich ne komplettlösung.
Gruß Daniel
AW: Das geht leider nicht............offen
17.06.2019 11:00:07
STeve
Tausend Dank Daniel für deine schnelle Hilfe/Lösung und deinen Zeitaufwand.
Wünsch dir noch einen schönen Tag
glg STeve
Anzeige
so eine unflexible Antwort!
17.06.2019 09:34:04
lupo1
Der Mensch hat dem Computer zu folgen. Nicht umgekehrt.
So, so, Lupo, immer? Dann gäb's auch kein Windows!
17.06.2019 13:21:44
Luc:-?
Von KI, PROLOG und Anderem ganz zu schweigen…
Gruß, Luc :-?
Ein bisschen Provokation muss sein ...
17.06.2019 21:09:02
lupo1
... eigentlich sollte auch einem Laien (wie TE) klar sein, dass man die Auswahlvariable in einen gemeinsamen Typ wandelt. Anzeigen kann man dann immer noch klicki-bunti.
AW: Gehaltserhöhungen
17.06.2019 10:31:46
Herbert
Hallo STeve,
das mit am Ende "D2" hatte ich noch vergessen. Nimm das hier:
Sub vorrücken()
Dim a%, iLastRow%, sVDate$, iGehStufe%
iLastRow = Cells(Rows.Count, 2).End(xlUp).Row
For a = 2 To iLastRow
If Cells(a, 10) = "D2" Then
Cells(a, 10).ClearContents
GoTo ende
Else
iGehStufe = Range("P:P").Find(What:=Cells(a, 10), Lookat:=xlWhole).Row + 1
sVDate = Day(Cells(a, 11)) & "." & Month(Cells(a, 11)) & "." & Year(Cells(a, 11)) +  _
2
If Date >= CDate(Cells(a, 11)) Then
Cells(a, 10) = Cells(iGehStufe, 16)
Cells(a, 11) = CDate(sVDate)
End If
End If
Next a
ende:
MsgBox "Fertig!", vbInformation, "!"
End Sub
Servus
Anzeige
Perfekt............
17.06.2019 11:02:39
STeve
Hallo lieber Herbert.
Das ist natürlich meeeeega.......werde das in meine Orginaldatei bei Öffnen einbauen.
Tausend Dank für deine schnelle und so komplette Lösung.
Dir noch einen schönen Tag.
mfg STeve
AW: Perfekt............
17.06.2019 11:04:03
Herbert
Hallo STeve,
gerne geschehen und danke für die Rückmeldung!
Servus

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige