Private Sub Worksheet_Activate()
Dim cl As Range, c As Variant, rij As Integer, q As Variant, nummer As Integer
Application.ScreenUpdating = False
'Aanpassen voor het verstoppen
Sheets("Agenda").Rows("2:2").Hidden = False
Sheets("Agenda").Rows("4:4").Hidden = False
With Sheets("Agenda").Range("B4:IQ25")
.ClearContents
.Interior.ColorIndex = xlNone
.UnMerge
End With
'Aanpassen voor de input data
With Sheets("AgendaData")
For Each cl In .Range("a3:a" & .Cells(.Rows.Count, 1).End(xlUp).Row)
If cl > 0 Then
'aanpassen voor agenda
With Sheets("Agenda")
.Columns("B:IQ").ColumnWidth = 45
Set c = .Range("B2:IQ2").Find(cl.Offset(, 1), LookIn:=xlValues)
.Columns("B:IQ").ColumnWidth = 3
'aanpassen voor de machines
rij = WorksheetFunction.Match(cl.Offset(, 2), .Range("A1:A25"), 0)
rij = rij + .Cells(rij, c.Column - 1).CurrentRegion.Rows.Count
If Not c Is Nothing Then
nummer = 0
Do Until nummer = 24
If .Range(c.Address).Offset(1, nummer).Value = cl.Offset(, 3) Then
q = IIf(cl.Offset(, 4) < cl.Offset(, 3), cl.Offset(, 4) + 25 - cl.Offset(, 3), _
cl.Offset(, 4) - cl.Offset(, 3))
If .Cells(rij, c.Column - 1) = 1 Then
.Cells(rij - 1, c.Column - 1).Offset(1) = 1
Else
.Cells(rij, c.Column - 1) = 1
End If
.Range(c.Address).Offset(rij - 3, nummer) = cl
.Range(c.Address).Offset(rij - 3, nummer).HorizontalAlignment = xlVAlignCenter
.Range(c.Address).Offset(rij - 3, nummer).Resize(, q).Merge
'kleur aanpassen
.Range(c.Address).Offset(rij - 3, nummer).Resize(, q).Interior.ColorIndex = 3: Exit Do
End If
nummer = nummer + 1
Loop
End If
End With
End If
Next
End With
'2e Agenda
Sheets("Agenda").Rows("27:27").Hidden = False
Sheets("Agenda").Rows("29:29").Hidden = False
With Sheets("Agenda").Range("B29:IQ42")
.ClearContents
.Interior.ColorIndex = xlNone
.UnMerge
End With
With Sheets("AgendaData")
For Each cl In .Range("g3:g" & .Cells(.Rows.Count, 1).End(xlUp).Row)
If cl > 0 Then
With Sheets("Agenda")
.Columns("B:IQ").ColumnWidth = 45
Set c = .Range("B27:IQ27").Find(cl.Offset(, 1), LookIn:=xlValues)
.Columns("B:IQ").ColumnWidth = 3
rij = WorksheetFunction.Match(cl.Offset(, 2), .Range("A26:A44"), 0)
rij = rij + .Cells(rij, c.Column - 1).CurrentRegion.Rows.Count
If Not c Is Nothing Then
nummer = 0
Do Until nummer = 24
If .Range(c.Address).Offset(1, nummer).Value = cl.Offset(, 3) Then
q = IIf(cl.Offset(, 4) < cl.Offset(, 3), cl.Offset(, 4) + 25 - cl.Offset(, 3), _
cl.Offset(, 4) - cl.Offset(, 3))
If .Cells(rij, c.Column - 1) = 1 Then
.Cells(rij - 1, c.Column - 1).Offset(1) = 1
Else
.Cells(rij, c.Column - 1) = 1
End If
.Range(c.Address).Offset(rij - 3, nummer) = cl
.Range(c.Address).Offset(rij - 3, nummer).HorizontalAlignment = xlVAlignCenter
.Range(c.Address).Offset(rij - 3, nummer).Resize(, q).Merge
.Range(c.Address).Offset(rij - 3, nummer).Resize(, q).Interior.ColorIndex = 4: Exit Do
End If
nummer = nummer + 1
Loop
End If
End With
End If
Next
End With
'3e Agenda
Sheets("Agenda").Rows("46:46").Hidden = False
Sheets("Agenda").Rows("48:48").Hidden = False
With Sheets("Agenda").Range("B48:IQ63")
.ClearContents
.Interior.ColorIndex = xlNone
.UnMerge
End With
With Sheets("AgendaData")
For Each cl In .Range("m3:m" & .Cells(.Rows.Count, 1).End(xlUp).Row)
If cl > 0 Then
With Sheets("Agenda")
.Columns("B:IQ").ColumnWidth = 45
Set c = .Range("B46:IQ63").Find(cl.Offset(, 1), LookIn:=xlValues)
.Columns("B:IQ").ColumnWidth = 3
rij = WorksheetFunction.Match(cl.Offset(, 2), .Range("A45:A63"), 0)
rij = rij + .Cells(rij, c.Column - 1).CurrentRegion.Rows.Count
If Not c Is Nothing Then
nummer = 0
Do Until nummer = 24
If .Range(c.Address).Offset(1, nummer).Value = cl.Offset(, 3) Then
q = IIf(cl.Offset(, 4) < cl.Offset(, 3), cl.Offset(, 4) + 25 - cl.Offset(, 3), _
cl.Offset(, 4) - cl.Offset(, 3))
If .Cells(rij, c.Column - 1) = 1 Then
.Cells(rij - 1, c.Column - 1).Offset(1) = 1
Else
.Cells(rij, c.Column - 1) = 1
End If
.Range(c.Address).Offset(rij - 3, nummer) = cl
.Range(c.Address).Offset(rij - 3, nummer).HorizontalAlignment = xlVAlignCenter
.Range(c.Address).Offset(rij - 3, nummer).Resize(, q).Merge
.Range(c.Address).Offset(rij - 3, nummer).Resize(, q).Interior.ColorIndex = 6: Exit Do
End If
nummer = nummer + 1
Loop
End If
End With
End If
Next
End With
Application.ScreenUpdating = True
End Sub