Notifications
Clear all

Preencher próxima linha

5 Posts
2 Usuários
0 Reactions
1,276 Visualizações
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá, amiguinhos do Excel!
Preciso de uma ajuda que acho que deve ser meio boba de se resolver.

Estou criando uma planilha de ponto em que meus funcionários clicam no botão "BATER PONTO" e fica registrado a data, a hora e o dia da semana do momento do clique.

O problema é que meu conhecimento de VBA é muito básico e não sei fazer a linha vazia seguinte ser preenchida.

O código que eu fiz foi o seguinte:

Sub Bater_Ponto()

ActiveSheet.Unprotect Password:="Senha"
Range("A2").Value = Format(Now, "dd/mm/yyyy")
Range("B2").Value = Format(Now, "hh:mm:ss")
Range("C2").Value = Format(Now, "dddd")
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, AllowSorting _
:=True, Password:="Senha"

End Sub

Eu preciso que logo após a linha 2 seja preenchida, o próximo clique faça o mesmo procedimento, só que na linha 3 e assim sucessivamente.

Alguém poderia me dar essa ajuda?

Segue em anexo a plan.

Um abraço,
Enrico

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 30/08/2013 7:22 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Veja se é isto :

Sub Bater_Ponto()

    Dim UltimaLin As Long
    
    'Captura a Ultima Linha em Branco
    UltimaLin = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row + 1

    ActiveSheet.Unprotect Password:="Senha"
    
        Range("A" & UltimaLin).Value = Format(Now, "dd/mm/yyyy")
        Range("B" & UltimaLin).Value = Format(Now, "hh:mm:ss")
        Range("C" & UltimaLin).Value = Format(Now, "dddd")
    
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFormattingCells:=True, AllowFormattingColumns:=True, AllowSorting _
        :=True, Password:="Senha"

End Sub

[]s

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 30/08/2013 7:51 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 
Sub Bater_Ponto()
    
    ActiveSheet.Unprotect Password:="Senha"
Dim linha As Integer
linha = ActiveSheet.Range("A65536").End(xlUp).Offset(1, 0).Row

ActiveSheet.Range("A" & linha).Value = Format(Now, "dd/mm/yyyy") '
ActiveSheet.Range("B" & linha).Value = Format(Now, "hh:mm:ss") '
ActiveSheet.Range("C" & linha).Value = Format(Now, "dddd")
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFormattingCells:=True, AllowFormattingColumns:=True, AllowSorting _
        :=True, Password:="Senha"

End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 30/08/2013 8:01 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Eu sabia que, como sempre, vocês não iriam decepcionar! ;)

Obrigado a todos e um abraço!
Enrico

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 30/08/2013 8:17 pm
(@proeletrica)
Posts: 100
Estimable Member
 

Olá amigo enricobrasil
Tem como você postar a planilha já alterada?
abraços

 
Postado : 02/09/2013 4:49 pm