Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
900to904
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
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Urlaubstage eintragen

Urlaubstage eintragen
31.08.2007 18:10:00
Josef_T
Hallo zusammen.
Hänge mal wieder fest und bräuchte nochmal Eure Hilfe. Ich möchte in dem TB-Eingaben, dass Datum des Urlaubsbeginns und das Datum fürs Urlaubsende eintragen. Diese Datums sollen dann per Makro in das im TB-Eingaben vorgegebene TB-MA1 oder MA2, usw. (Dropdownfeld oder Namen) eingefügt werden. Dass nächste Prob ist, dass das Beginndatum und das Enddatum untereinander geschrieben werden sollen, mit jeweils einer 1 in jeder Zeile, bis zum Enddatum. Bei Wochenenden und Feiertagen, sollte kein Eintrag erfolgen. Habe mal ein Muster hochgeladen. https://www.herber.de/bbs/user/45601.xls
Ich möchte Euch bitten, mir dabei zu helfen. Ich kriege das alleine noch nicht auf die Reihe.
Danke schon mal im Voraus.
Gruß
Josef

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Urlaubstage eintragen
31.08.2007 19:53:00
Jan3
Hi Josef,
Du hast für jeden Mitarbeiter ein Tabellenblatt für den Jahresurlaub! Ist es nicht sinnvoller alle Mitarbeiter in einem Tabellenblatt mit den entsprechenden Urlaubszeiträumen einzutragen? Dann hat man doch schnell eine Übersicht für alle Mitarbeiter und sieht, wo Überschneidungen der Urlaubszeiträume vorkommen!
Was willst Du mit der Eintragung der 1 in den Zellen erreichen? Willst Du eine bedingte Formatierung darüber realisieren?
Das kann man anders lösen!
Jan

AW: Urlaubstage eintragen
31.08.2007 21:14:00
Josef
Hallo Jan,
Das TB-Eingaben, ist in einem Stundenprogramm intregiert und ist eigentlich ein Urlaubsantrag. Wenn der Urlaubsantrag genehmigt wird, soll mit dem Makro die Anzahl der Urlaubstage in das jeweilige TB des MA in eine Spalte neben den Ist-Stunden eingetragen werden. Von dort aus werden alle eingetragenen Urlaubstage, von allen Mitarbeitern (44) eingelesen und in dem TB-Urlaub alle nebeneinander gelistet. Das ganze Programm, läuft eigentlich einwandfrei, bis auf das manuelle eingeben der Urlaubstage wenn der Antrag genehmigt wurde.
Bislang wurden die Urlaubszeiten immer zu Fuß in das Stundenblatt des MA eingegeben und genau das, möchte ich nun mit dem Makro erleichtern, weil ja alle Daten schon im Antragsblatt eingetragen sind.
Ich hoffe, so ist es besser zu verstehen.
Gruß
Josef

Anzeige
AW: Urlaubstage eintragen
31.08.2007 20:56:24
Herby
Hallo Josef,
unabhängig davon, ob die Lösung sinnvoll ist oder nicht (vgl. Beitrag Jan3),
technisch gesehen funktionierts.
https://www.herber.de/bbs/user/45603.xls
viele Grüße
Herby

AW: Urlaubstage eintragen
31.08.2007 21:25:00
Josef
Hi Herby,
das ist der Hammer. Genau so hatte ich mir das vorgestellt. Einach Genial!
Herzlichen Dank nochmal und ein schönes Wochenende.
P.S. Danke auch an Jan3!
Gruß Josef

AW: Urlaubstage eintragen
31.08.2007 22:50:44
Josef
Hi Herby,
Habe eben beim installieren des Makros erst bemerkt, dass man nur zwei (MA1+MA2) TB bearbeiten kann.
Ich muß aber auf 44 TB zugreifen können, gibt es dafür auch eine Lösung?
Vieleicht mit MA# ? habe noch etwas ähnliches gefunden, kann das aber nicht umsetzen.
Private Sub Workbook_Open()
Dim wks As Worksheet
Dim iRow As Integer
For Each wks In Worksheets
If wks.Name Like "MA#*" Then
iRow = WorksheetFunction.Match(CDbl(Date), wks.Columns(1), 0)
Application.Goto wks.Cells(iRow, 1), True
End If
Next wks
Gruß
Josef

Anzeige
AW: Urlaubstage eintragen
31.08.2007 23:59:00
Herby
Hallo Josef,
dann siehts Makro ein bischen ander aus:

Sub UrlaubEintragen()
Dim UBeginn As Date
Dim UEnde As Date
Dim Wer As String
Dim Wks As Worksheet
Dim Flag As Integer
If IsDate(Worksheets("Eingaben").Cells(10, 3)) Then
UBeginn = Worksheets("Eingaben").Cells(10, 3)
Else
MsgBox "Geben Sie beim Urlaubsbeginn ein korrektes Datum ein !"
Exit Sub
End If
If IsDate(Worksheets("Eingaben").Cells(10, 5)) Then
UEnde = Worksheets("Eingaben").Cells(10, 5)
Else
MsgBox "Geben Sie beim Urlaubsende ein korrektes Datum ein !"
Exit Sub
End If
'Prüfung ob die Diff. zwischen beiden Datums positiv ist
If DateSerial(Year(UEnde), Month(UEnde), Day(UEnde)) 



Sub eintragen(ByRef Wer As String, UBeginn As Date, UEnde As Date)
Dim lZ As Long, i As Long
MsgBox "Mitarbeiter: " & Wer & " - U-Beginn: " & UBeginn & " - U-Ende: " & UEnde
lZ = Worksheets(Wer).Cells(Rows.Count, 1).Row
For i = 3 To lZ
If Worksheets(Wer).Cells(i, 1) >= UBeginn And Worksheets(Wer).Cells(i, 1)  0 Then ' Feiertag
Worksheets(Wer).Cells(i, 4) = ""
End If
End If
End If
Next i
End Sub


Viele Grüße
Herby

Anzeige
AW: Urlaubstage eintragen
01.09.2007 00:00:00
Herby
Hallo Josef,
dann siehts Makro ein bischen ander aus:

Sub UrlaubEintragen()
Dim UBeginn As Date
Dim UEnde As Date
Dim Wer As String
Dim Wks As Worksheet
Dim Flag As Integer
If IsDate(Worksheets("Eingaben").Cells(10, 3)) Then
UBeginn = Worksheets("Eingaben").Cells(10, 3)
Else
MsgBox "Geben Sie beim Urlaubsbeginn ein korrektes Datum ein !"
Exit Sub
End If
If IsDate(Worksheets("Eingaben").Cells(10, 5)) Then
UEnde = Worksheets("Eingaben").Cells(10, 5)
Else
MsgBox "Geben Sie beim Urlaubsende ein korrektes Datum ein !"
Exit Sub
End If
'Prüfung ob die Diff. zwischen beiden Datums positiv ist
If DateSerial(Year(UEnde), Month(UEnde), Day(UEnde)) 



Sub eintragen(ByRef Wer As String, UBeginn As Date, UEnde As Date)
Dim lZ As Long, i As Long
MsgBox "Mitarbeiter: " & Wer & " - U-Beginn: " & UBeginn & " - U-Ende: " & UEnde
lZ = Worksheets(Wer).Cells(Rows.Count, 1).Row
For i = 3 To lZ
If Worksheets(Wer).Cells(i, 1) >= UBeginn And Worksheets(Wer).Cells(i, 1)  0 Then ' Feiertag
Worksheets(Wer).Cells(i, 4) = ""
End If
End If
End If
Next i
End Sub


Viele Grüße
Herby

Anzeige
AW: Urlaubstage eintragen
01.09.2007 00:47:00
Josef
Hi Herby,
funktioniert jetzt alles einwandfrei. Dieses Makro ist eine Mitternachtsspitze!
Danke nochmal!
Viele Grüsse und ein schönes Wochenende
Josef

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige