我的VBA代码不会将用户表单输入放入单元格

时间:2019-02-18 08:14:01

标签: excel vba

这似乎是一个愚蠢的问题,但是我试图将一些信息输入到用户表单中,以放入数据库中我的工作表的单元格中。除4行外,所有输入均正确输入。有人能启发我为什么会这样吗?我可能在这里错过了一些非常愚蠢的东西,但是我一生都找不到。
下面是我的代码:

 Dim Initialrow As Variant

 Initialrow = Sheets("Jan").Range("Data_Start").Offset(1, 0)

If IsEmpty(Initialrow) = True Then
    Sheets("Jan").Range("Data_Start").Offset(1, 0).Value = InitialUF.VisitDate.Value
    Sheets("Jan").Range("RP_Start").Offset(1, 0) = InitialUF.RPName  '<-- This isn't executing'
    Sheets("Jan").Range("Proj_Start").Offset(1, 0) = InitialUF.Project ' <-- This isn't executing'
    Sheets("Jan").Range("Data_Start").Offset(1, 3) = Observation
    Sheets("Jan").Range("Data_Start").Offset(1, 4) = Comment
    Sheets("Jan").Range("Data_Start").Offset(1, 5) = Improvement

    If Len(Improvement) > Len(Comment) Then
       Sheets("Jan").Range("Data_Start").Offset(1, 5).Rows.AutoFit
    ElseIf Len(Comment) > Len(Improvement) Then
       Sheets("Jan").Range("Data_Start").Offset(1, 4).Rows.AutoFit
    ElseIf Comment = Null Then
       Sheets("Jan").Range("Data_Start").Offset(1, 5).Rows.AutoFit
    ElseIf Improvement = Null Then
       Sheets("Jan").Range("Data_Start").Offset(1, 4).Rows.AutoFit
    ElseIf Len(Comment) = Len(Improvement) Then
       Sheets("Jan").Range("Data_Start").Offset(1, 4).Rows.AutoFit
    Else
    End If
Else
    Sheets("Jan").Range("D1048576").End(xlUp).Offset(1, 0).Value = InitialUF.VisitDate.Value
    Sheets("Jan").Range("E1048576").End(xlUp).Offset(1, 0) = InitialUF.RPName '<-- This isn't executing'
    Sheets("Jan").Range("F1048576").End(xlUp).Offset(1, 0) = InitialUF.Project '<-- This isn't executing'
    Sheets("Jan").Range("Obs_Start").End(xlDown).Offset(1, 0) = Observation
    Sheets("Jan").Range("Obs_Start").End(xlDown).Offset(0, 1) = Comment
    Sheets("Jan").Range("Obs_Start").End(xlDown).Offset(0, 2) = Improvement

    If Len(Improvement) > Len(Comment) Then
        Sheets("Jan").Range("Data_Start").Offset(1, 5).Rows.AutoFit
    ElseIf Len(Comment) > Len(Improvement) Then
        Sheets("Jan").Range("Data_Start").Offset(1, 4).Rows.AutoFit
    ElseIf Comment = Null Then
        Sheets("Jan").Range("Data_Start").Offset(1, 5).Rows.AutoFit
    ElseIf Improvement = Null Then
        Sheets("Jan").Range("Data_Start").Offset(1, 4).Rows.AutoFit
    ElseIf Len(Comment) = Len(Improvement) Then
        Sheets("Jan").Range("Data_Start").Offset(1, 4).Rows.AutoFit
    Else
    End If
End If

RPNameProject都是InitialUF用户表单中文本框的名称。此代码在后续的UF中执行。我从InitialUF上的按钮复制并粘贴了这些行,它们在此正确输入,但现在拒绝工作。
感谢您的时间,并提前感谢您的帮助!

0 个答案:

没有答案