Fiz uma gambiarra aqui e dá pra tapear, porem fiquei limitado a voltar 5 linhas para encontrar um valor numérico, ou continuar digitando um imenso código;como seria pra tornar "ciclico" pegando na ultima linha preenchida , se não for numero ir voltando até encontrar um numero , sem necessidade de escrever um código gigante , usando acho que For , Next ou Loop.
Private Sub userform_initialize()
y = Range("BJ65536").End(xlUp).Row
'Cells(y, 62).Select
'Me.LblUltPto.Caption = Cells(y, 62)
If IsNumeric(Cells(y, 62)) Then
Me.txtNovPto.Text = Cells(y, 62).Value + 1
Me.LblUltPto.Caption = Cells(y, 62)
Exit Sub
Else
If Not IsNumeric(Cells(y, 62)) Then
x = Range("BJ65536").End(xlUp).Row - 1
If IsNumeric(Cells(x, 62)) Then
Me.txtNovPto.Text = Cells(x, 62).Value + 1
Me.LblUltPto.Caption = Cells(x, 62)
Exit Sub
Else
If Not IsNumeric(Cells(x, 62)) Then
w = Range("BJ65536").End(xlUp).Row - 2
If IsNumeric(Cells(w, 62)) Then
Me.txtNovPto.Text = Cells(w, 62).Value + 1
Me.LblUltPto.Caption = Cells(w, 62)
Exit Sub
Else
If Not IsNumeric(Cells(w, 62)) Then
q = Range("BJ65536").End(xlUp).Row - 3
If IsNumeric(Cells(q, 62)) Then
Me.txtNovPto.Text = Cells(q, 62).Value + 1
Me.LblUltPto.Caption = Cells(q, 62)
Exit Sub
Else
If Not IsNumeric(Cells(q, 62)) Then
Z = Range("BJ65536").End(xlUp).Row - 4
If IsNumeric(Cells(Z, 62)) Then
Me.txtNovPto.Text = Cells(Z, 62).Value + 1
Me.LblUltPto.Caption = Cells(Z, 62)
Exit Sub
Else
If Not IsNumeric(Cells(Z, 62)) Then
k = Range("BJ65536").End(xlUp).Row - 5
If IsNumeric(Cells(k, 62)) Then
Me.txtNovPto.Text = Cells(k, 62).Value + 1
Me.LblUltPto.Caption = Cells(k, 62)
Exit Sub
'Me.txtNovPto.Text = Cells(y, 62).Value + 1
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 29/04/2012 7:24 pm