2016-04-18 4 views
0

Моей колонка А имеет значение, как kat1 КАТ2 пустого kat3 Я хотел программу по существу пропустить пустую ячейку и использовать kat3 в качестве ячейки, чтобы установить последнюю строку (lrow). Код, который я использую, показан ниже. Ниже приводится пересмотренный код:Как пропустить пустую ячейку в столбце?

Private Sub txt_BPName1_Exit(ByVal cancel As MSForms.ReturnBoolean) 
Dim ws As Worksheet 
    Dim Lrow As Long 
    Dim c As Range, rng As Range 

    Set ws = ThisWorkbook.Sheets("Sheet1") 


    With ws 

     Lrow = .Range("A" & .Rows.Count).End(xlUp).row 
     'Lrow = .Range("A" & .Rows.Count, 1).End(xlUp).Select 
     'Lrow = .Range("A65536").End(xlUp).row + 1 
     Set rng = .Range("A2:A" & Lrow) 

    End With 

    For Each c In rng 
     If c.Value = txt_BPName1 And c.Value <> "" Then 
      MsgBox "Cell " & c.Address & " Duplicate Found." 
       cancel = True 


      Exit Sub 
     End If 
    Next 

    MsgBox ("Base Product is not duplicate,Ok to Add") 

    Cells(Lrow + 1, 1).Value = txt_BPName1.Text 

    txt_BPName1.Text = "" 
    ActiveCell.Offset(1, 0).Select 

End Sub 

Значение становится вводится в пустую ячейку вместо одного под ним.

+1

Что случилось с 'Lrow = .Range ("A" & .Rows.Count) .END (xlUp) .row'? – findwindow

+0

Ошибка в том, что вы используете '.Select', пытаясь установить его в переменную. Включите это вместо '.Row'. Но это может быть не (скорее всего, не) решение вашей общей проблемы ... Вот почему эта ошибка происходит для вас. Вы могли бы попробовать выполнить 'If c.Value = txt_BPName1 и c.Value <>" "Then' – BruceWayne

ответ

1

Просто добавьте, если заявление в цикле

For Each c In rng 
    If not "" = c.Value Then 
+0

Я лично перевернул бы это, чтобы сделать его более интуитивным,' If c.Value <> "" Then ... ' Кроме «If not blank is C Value» vs. «если значение c не пустое, то« – BruceWayne

+0

@ Abhi0609 - Можете ли вы вместо этого отредактировать этот комментарий в своем OP? Трудно прочитать код в комментариях. – BruceWayne

+0

@ Брюс Уэйн: ОР отредактирован. – Abhi0609

Смежные вопросы