Notifications
Clear all

MANTER PRIMEIRO E ULTIMO REGISTRO

2 Posts
2 Usuários
0 Reactions
1,045 Visualizações
(@heiderick)
Posts: 15
Active Member
Topic starter
 

Boa Tarde Galera,

O arquivo de exemplo está anexo, preciso de uma ajuda no caso abaixo, preciso manter o primeiro e ultimo registro por matricula, no caso seria mantido 07:39 e 17:35, pode ser via vba.

O problema é que tenho inumeros nomes e horarios.

MATRICULA NOME CARGO SETOR DATA1 HORA TIPO
1 FULADO AUX GERAL 24/02/2017 7:39:00 ENTRADA
1 FULADO AUX GERAL 24/02/2017 11:38:00 ENTRADA
1 FULADO AUX GERAL 24/02/2017 11:48:00 SAÍDA
1 FULADO AUX GERAL 24/02/2017 12:09:00 SAÍDA
1 FULADO AUX GERAL 24/02/2017 14:09:00 ENTRADA
1 FULADO AUX GERAL 24/02/2017 16:07:00 SAÍDA
1 FULADO AUX GERAL 24/02/2017 16:11:00 ENTRADA
1 FULADO AUX GERAL 24/02/2017 17:27:00 SAÍDA
1 FULADO AUX GERAL 24/02/2017 17:35:00 SAÍDA
2 BELTRANO AUX GERAL 24/02/2017 4:50:00 ENTRADA
2 BELTRANO AUX GERAL 24/02/2017 5:05:00 SAÍDA
2 BELTRANO AUX GERAL 24/02/2017 10:54:00 ENTRADA
2 BELTRANO AUX GERAL 24/02/2017 11:16:00 SAÍDA
2 BELTRANO AUX GERAL 24/02/2017 15:26:00 SAÍDA

 
Postado : 02/03/2017 2:21 pm
(@teleguiado)
Posts: 142
Estimable Member
 

heiderick, adpte o código abaixo na sua planilha.

Private Sub Workbook_Open()

Dim W As Worksheet
Dim UltCel As Range
Application.ScreenUpdating = False
Sheets("Controle de Acesso").Visible = True
Set W = Sheets("Controle de Acesso")

W.Select
W.Range("A2").Select

Set UltCel = W.Range("A1048576").End(xlUp).Offset(1, 0)
UltCel.Select

ActiveCell.Value = Environ("username")
ActiveCell.Offset(0, 1).Value = Date & " / " & Time

Sheets("Controle de Acesso").Visible = False

Sheets("Resumo").Select

MainForm.Show
Retornar_Navegador

Application.ScreenUpdating = True
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim W As Worksheet
Dim UltCel As Range
Application.ScreenUpdating = False

Sheets("Controle de Acesso").Visible = True
Set W = Sheets("Controle de Acesso")

W.Select
W.Range("A2").Select

Set UltCel = W.Range("A1048576").End(xlUp).Offset(1, 0)

UltCel.Select

ActiveCell.Value = Environ("Username")
ActiveCell.Offset(0, 2).Value = Date & " / " & Time

ActiveWorkbook.Close True
Sheets("Controle de Acesso").Visible = False

Application.ScreenUpdating = True
End Sub

Obrigado.

Teleguiado.
E-mail: [email protected]

 
Postado : 02/03/2017 2:27 pm