Q: Update userform with values in range I currently have a sheet that tracks when people in my building are notified of package arrivals, and then information about that package. I have a "Send Reminders" button that shows the userform, which is meant to look through the sheet and determine which packages have been waiting for more than two days, and then fill in several fields on the form with appropriate data for the user (I do not have any reputation yet, so cannot post an image).
The first text box is Email, the second is Subject, and the third is Message. There is a Next button just causes the form to initialize again, so I was hoping that it would just look up the next package that has been waiting, and if there are none found, then the form closes. 
The problem is that when I click the button to show the form, the Email box and the Message box both show up blank, although the Subject box is fine.
Private Sub UserForm_Initialize()

Dim checkRange As Range
Dim rCell As Range
Dim k As Integer

On Error Resume Next
k = 0
Sheets(1).Activate
checkRange = ActiveSheet.Range("D3", "D100")

For Each rCell In checkRange.Cells
    If rCell.Value >= 2 Then
        Email.Value = Cells(rCell.Row, 1).Value
        Subject.Value = "Package Reminder"
        Message.Value = "This is a reminder that you have a package from " & _
        Cells(rCell.Row, 2).Value & _
        " waiting for you in the machine shop."
        k = 1
        Cells(rCell.Row, 3).Value = Date
        Exit For
    End If
Next rCell

If k = 0 Then
    Unload Me
    MsgBox ("All reminders sent!")
End If

End Sub


A: Edit:
I must be blind; I didn't realize what this line of code was doing!
checkRange = ActiveSheet.Range("D3", "D100")

This should probably be:
checkRange = ActiveSheet.Range("D3:D100")

Hope this helps; sorry to be slow! :)
Original:
I tried writing the code you described to see how it functioned.
This is what I came up with; I hope this helps you in some way!
I'm not sure what is wrong with your code because this is pretty much the same thing and it works as expected:

Private Sub UserForm_Initialize()

Dim rCell
Dim foundPackage
foundPackage = False

For Each rCell In Sheets("Sheet1").Range("D2:D12")
    If rCell.Value >= 2 And Sheets("Sheet1").Cells(rCell.Row, 3).Value = "" Then 'Added AND so it goes to the next one after a date is set
        Email.Value = Sheets("Sheet1").Cells(rCell.Row, 1).Value
        Subject.Value = "Package Reminder"
        Message.Value = "This is a reminder that you have a package from " & _
            Sheets("Sheet1").Cells(rCell.Row, 2).Value & " waiting in the machine shop."
        Sheets("Sheet1").Cells(rCell.Row, 3).Value = Date 'This will set the date on the cell - I believe this is as intended
        foundPackage = True
        Exit For
    End If
Next rCell

If foundPackage = False Then
    Unload Me
    MsgBox ("All reminders sent!")
End If
End Sub


