Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1776to1780
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

Zellinhalte über Schleife zuordnen

Zellinhalte über Schleife zuordnen
11.08.2020 10:19:46
Marina
Hallo Zusammen,
ich sitze aktuell an einer Datei mit der die anwesenden Mitarbeiter (Spalte X) auf Basis ihrer Qualifikation (Spalten AF bis AJ) den richtigen Arbeitsplätzen (passende Quali pro Arbeitsplatz steht in Spalte E) auf Montag bis Sonntag (Spalte F bis L) zugeordnet werden. D.h. zuerst sollen die Arbeitsplätze nach Quali 1 Spalte AF, wenn noch Positionen frei bleiben nach Quali 2 Spalte AG, usw. besetzt werden, dabei sollen die Qualifikationen der Mitarbeiter (Spalten AF bis AJ) mit den erforderlichen Qualifikationen für diese Position (Spalte E) übereinstimmen. Der Name des Mitarbeiters aus Spalte X soll dann bei Übereinstimmung der Qualifikation für Montag bis Sonntag (Spalten F bis L) eingetragen werden.
Den Code für die Schleife habe ich schon:
Sub WochePrio()
'a Schleife Anfang (Spalten Wochentage Mo - Sa durchsuchen)
For a = 6 To 12
'i Schleife Anfang (Linienpositionen durchsuchen)
For i = 8 To 262
If Cells(i, a).Value = "" Then
Wert = Range("E" & i).Value
'j Schleife Anfang (MA Pool Durchsuchen)
For j = 8 To 186
If Range("Q" & j).Value = Wert Then
Range("X" & j).Copy
Cells(i, a).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Exit For
End If
Next j
'j Schleife Ende
End If
Next i
'i Schleife Ende
Next a
'a Schleife Ende
Next b
'b Schleife Ende
MsgBox "Wochenplanung ist fertig"
End Sub
Ich habe nun das Problem, dass die Mitarbeiter doppelt besetzt werden, sobald nach der nächsten Quali geschaut wird.
Wie muss ich die Schleife anpassen, sodass vor dem verplanen der MA geprüft wird, ob dieser schon eingetragen ist? Wenn dass der Fall ist soll dann nach dem nächsten gesucht werden.
Ich hoffe ihr könnt mir helfen. Ein großes Dankeschön schon mal im Voraus!
Liebe Grüße
Marina

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellinhalte über Schleife zuordnen
11.08.2020 11:07:01
Rudi
hallo,
teste mal:
Sub WochePrio()
Dim a As Long, b As Long, i As Long, j As Long, Wert
Dim objMA As Object, oObj
Set objMA = CreateObject("scripting.dictionary")
'Mitarbeiter sammeln
For j = 8 To 186
objMA(Range("X" & j).Value) = 0
Next
'a Schleife Anfang (Spalten Wochentage Mo - Sa durchsuchen)
For a = 6 To 12
'i Schleife Anfang (Linienpositionen durchsuchen)
For i = 8 To 262
If Cells(i, a).Value = "" Then
Wert = Range("E" & i).Value
'j Schleife Anfang (MA Pool Durchsuchen)
For j = 8 To 186
If Range("Q" & j).Value = Wert Then
If objMA(Range("X" & j).Value) = 0 Then 'MA noch nicht eingeplant
Range("X" & j).Copy
Cells(i, a).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
objMA(Range("X" & j).Value) = 1
Exit For
End If
End If
Next j
'j Schleife Ende
End If
Next i
'i Schleife Ende
'Ma wieder auf ungeplant setzen
For Each oObj In objMA
objMA(oObj) = 0
Next oObj
Next a
'a Schleife Ende
'Next b
'b Schleife Ende
MsgBox "Wochenplanung ist fertig"
End Sub

Gruß
Rudi
Anzeige
AW: Zellinhalte über Schleife zuordnen
11.08.2020 17:26:08
Marina
Hallo Rudi,
erstmal vielen Dank für die schnelle Antwort.
Leider hat der Code in meiner Datei nicht funktioniert bzw. hat sich nichts verändert.
Die Personen werden trotzdem weiterhin doppelt verteilt.
Ich habe eine Test Datei hochgeladen, vielleicht hilft dir das.
https://www.herber.de/bbs/user/139582.xlsm
Grüße
Marina

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige