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

Formel???

Formel?
Anne
Hallo,
ich habe ein Formelproblem. Ich habe dazu mal was hochgeladen:
https://www.herber.de/bbs/user/66343.xls
Im ersten Reiter "Ausgangstabelle" sind die Ausgangsdaten ersichtlich. Im zweiten Reiter steht die "Auswertung", wie sie quasi am Ende rauskommen soll. Im dritten Reiter stehen meine "Versuche" diese Auswertung herauszukriegen.
Dabei gibt es 2 Probleme:
- Das Produkt soll über die gesamte Dauer angezeigt werden (z. B. es wird über 3 Schichten produziert, also soll es auch 3 Mal da stehen über die gesamte Dauer.).
- Es kann vorkommen, dass in einer Schicht auf einer Maschine 2 Produkte nacheinander laufen. Wie kann ich das abbilden?
Hoffentlich könnt ihr mir helfen. Ich bin sehr verzweifelt.
Gruß Anne

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Formel?
03.12.2009 17:41:07
fcs
Hallo Anne,
eine Formellösung dürfte hier ziemlich kompliziert werden, wenn überhaupt möglich.
Einfacher ist hier eine Lösung per Makro.
Gruß
Franz
Sub MaschinenPlan()
Dim wksDaten As Worksheet, ZeileDaten As Long
Dim wksAuswert As Worksheet, ZeileAusw As Long, SpalteMa As Long
Dim ZeitpunktStart As Date, ZeitpunktEnde As Date
Dim Maschine As String, Produkt As String
Dim SchichtStart As String, SchichtEnde As String, Schichtbeginn As Date
Set wksDaten = Worksheets("Ausgangstabelle")
Set wksAuswert = Worksheets("Auswertung")
With wksAuswert
.Range(.Cells(2, 3), .Cells.SpecialCells(xlCellTypeLastCell)).ClearContents
End With
With wksDaten
For ZeileDaten = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
'Daten aus Zeile in Ausgangstabelel einlesen
ZeitpunktStart = .Cells(ZeileDaten, 3).Value
ZeitpunktEnde = .Cells(ZeileDaten, 7).Value
SchichtStart = .Cells(ZeileDaten, 4).Value
SchichtEnde = .Cells(ZeileDaten, 8).Value
Maschine = .Cells(ZeileDaten, 9).Value
Produkt = .Cells(ZeileDaten, 10).Value
With wksAuswert
SpalteMa = Application.WorksheetFunction.Match(Maschine, .Range(.Cells(1, 1), .Cells(1,  _
.Columns.Count).End(xlToLeft)), 0)
For ZeileAusw = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
'Beginn der Schichtzeit in Auswertungzeile
Select Case Mid(.Cells(ZeileAusw, 2).Value, InStr(1, .Cells(ZeileAusw, 2).Value, " ")  _
+ 1)
Case "Früh"
Schichtbeginn = .Cells(ZeileAusw, 1).Value + CDate("06:00:00")
Case "Spät"
Schichtbeginn = .Cells(ZeileAusw, 1).Value + CDate("14:00:00")
Case "Nacht"
Schichtbeginn = .Cells(ZeileAusw, 1).Value + CDate("22:00:00")
End Select
'Vergleich Schichtbeginn innerhalb Produktionszeitraum oder Schichtbezeichnung _
übereinstimmend
If (Schichtbeginn >= ZeitpunktStart And Schichtbeginn 

Anzeige
AW: Formel?
04.12.2009 07:54:15
Anne
Guten Morgen,
vielen Dank für deine Antwort!
Aber das genau so kopiert, aber wenn ich das Makro ausführe, macht der gar nichts?
Gruß Anne
AW: Formel?
04.12.2009 08:08:21
Anne
Hallo,
ich habe mich geirrt. Der hat doch was gemacht. Aber auf Ma1 und Ma3 sind Lücken in der Darstellung.
Gruß Anne
AW: Formel?
04.12.2009 14:46:35
fcs
Hallo Anne,
du muss im Blatt Auswertung die Reihenfolge der Schichten für den Tag ändern
Die Nachtschicht eines Tages beginnt immer um 22:00 Uhr. Deshalb die Nachtschicht als 3. Schicht eines Tages.
24.11.2009	24.11.2009 Früh
24.11.2009	24.11.2009 Spät
24.11.2009	24.11.2009 Nacht
25.11.2009	25.11.2009 Früh
25.11.2009	25.11.2009 Spät
25.11.2009	25.11.2009 Nacht
Gruß
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige