Anzeige
Archiv - Navigation
1556to1560
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

Zeiten der Pause auslesen

Zeiten der Pause auslesen
13.05.2017 12:33:15
Steve
Servus an alle.
Ich schon wieder.
Vorab nochmal Danke an ChrisL welcher die angehängte Datei mit einem perfekten Code (Namensliste in eine Zelle - Namen finden und in einer Zelle zusammensetzen) umgesetzt hat.
Sub t() und
Private Function GetName ()
Mit der Bitte um Einstellung einer Lösung für folgendes Problem:
https://www.herber.de/bbs/user/113551.xlsm
Wenn ein Mitarbeiter die Arbeit 3 im Block B hat soll gesucht werden wann er seine Pause haben will - von bis ( z.b. 23-03) soll in eine Zelle geschrieben werden.
Bei der Arbeit 4 eben in eine andere Zelle.
Die Kollegen tragen die Pausen selber ein. Die Namen spielen hier keine Rolle mehr sondern ich muss nur auslesen dass Arbeit 3 und eben Arbeit 4 - von bis - auf Pause ist.
Tausend Dank für eure Zeit, Mühen und Umsetzungen.
Schönes WE.
lg STeve

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
nur mehr wenig fehlt?
15.05.2017 11:21:29
Steve
Servus nochmal.
Datei konnte von mir soweit adaptiert werden dass - oben - die Zeiten ausgelesen werden, jedoch die Unterscheidung ob Arbeit 3 oder 4 gemacht wurde fuchst mich.
Hier die neueste Version:
https://www.herber.de/bbs/user/113586.xlsm
Wenn ein Mitarbeiter die Arbeit 3 im Block B hat soll gesucht werden wann er seine Pause haben will - von bis (23-03) soll in eine Zelle(N12) geschrieben werden.
Bei der Arbeit 4 (20-23) eben in eine andere Zelle (N14).
Die Kollegen tragen die Pausen selber ein. Die Namen spielen hier keine Rolle mehr sondern ich muss nur auslesen dass Arbeit 3 und eben Arbeit 4 - von bis - auf Pause ist.
Tausend Dank für eure Zeit und Ideen.
lg STeve
Anzeige
AW: nur mehr wenig fehlt?
16.05.2017 16:43:48
ChrisL
hi Steve
Für Aussenstehende ziemlich undurchsichtig, aber probiere mal...
Sub Pausen()
Range("N12") = GetTime(Range("L4:U4"), Range("L5:U8"), 3)
Range("N14") = GetTime(Range("L4:U4"), Range("L5:U8"), 4)
End Sub

Private Function GetTime(rngZeiten As Range, rngBereich As Range, iWert As Integer) As String
Dim iZeile As Long, iSpalte As Long, i As Long
For iZeile = rngBereich.Row To rngBereich.Row + rngBereich.Rows.Count - 1
For iSpalte = rngBereich.Column To rngBereich.Column + rngBereich.Columns.Count - 2
If Cells(iZeile, iSpalte) = iWert And Cells(iZeile, iSpalte + 1) = "Pause" Then
GetTime = Left(Cells(rngZeiten.Row, iSpalte + 1), 2)
For i = iSpalte + 1 To rngBereich.Column + rngBereich.Columns.Count - 1
If Cells(iZeile, i + 1)  "Pause" Then
GetTime = GetTime & " - " & Right(Cells(rngZeiten.Row, i), 2)
Exit Function
End If
Next i
End If
Next iSpalte
Next iZeile
GetTime = "kein Treffer"
End Function

cu
Chris
Anzeige
ChrisL ist ein Wahnsinn!!!!!
16.05.2017 21:06:11
Steve
Hallo Chris.
Tausend Dank dass du dich meines Problemes doch noch angenommen hast.
Der Code ist perfekt.
Dir noch schönen super Abend und hoffe dass ich bei einem - wahrscheinlich schon bald - für mich unlösbarem Problem in VBA wieder hier anfragen darf.
lg Steve

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige