Ga naar inhoud

cellen automatisch invullen van gegevens uit lijst


JTvD

Aanbevolen berichten

Op blad Validatie zet je alle namen onder elkaar in kolom A. In kolom B zet je de shift waarin ze die week zullen werken.

 

Klik daarna op Blad1 op de knop en vul het gewenste weeknummer in.

 

Sub test()
    wknum = Application.InputBox("Geef het weeknummer op.", "Weeknummer", , , , , , 1)
    numcol = Cells(2, 1).CurrentRegion.Columns.Count
    If wknum <> vbNullString Then wRow = Application.Match(wknum, Columns(1), 0)
    If Not IsError(wknum) Then
        For j = 3 To numcol
            myGroup = Cells(2, j).Value
            If myGroup = "" Then Exit Sub
            x = Filter(Evaluate("transpose(if(Validatie!b2:b10000=""" & myGroup & """,Validatie!a2:a10000))"), False, 0)
            For WK = wRow To wRow + 28 Step 7
                Cells(WK, j).Resize(UBound(x) + 1, 1).Value = Application.Transpose(x)
            Next WK
        Next
    End If
End Sub

 

auto invullen namen_ba.xlsm

Link naar reactie
Delen op andere sites

Deze met error-trapping in geval er voor een bepaalde shift geen namen geselecteerd zijn in werkblad Validatie.

 

Sub test()
    wknum = Application.InputBox("Geef het weeknummer op.", "Weeknummer", , , , , , 1)
    numcol = Cells(2, 1).CurrentRegion.Columns.Count
    If wknum <> vbNullString Then wRow = Application.Match(wknum, Columns(1), 0)
    If Not IsError(wknum) Then
        For j = 3 To numcol
            myGroup = Cells(2, j).Value
            If myGroup = "" Then Exit Sub
            x = Filter(Evaluate("transpose(if(Validatie!b2:b10000=""" & myGroup & """,Validatie!a2:a10000))"), False, 0)
            If UBound(x) = -1 Then GoTo gonext
            For WK = wRow To wRow + 28 Step 7
                Cells(WK, j).Resize(UBound(x) + 1, 1).Value = Application.Transpose(x)
            Next WK
gonext:
        Next
    End If
End Sub

 

Link naar reactie
Delen op andere sites

Gast
Dit topic is nu gesloten voor nieuwe reacties.
×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.