About Me
Com tecnologia do Blogger.
Seguidores
Estatisticas
2006-07-20
VBE: A Função ENVIRON()
3:11 da tarde |
Publicada por
JRod - PORTUGAL |
Editar mensagem
Por vezes, podemos ter necessidade de saber qual foi o utilizador que acedeu e quando acedeu a uma determinada worksheet, nomeadamente quando se trabalha em rede.
O Código:
Private iNextRow As Long
Const HIDDEN_SHEET As String = "Sheet3" ' ou outro nome
Private Sub Workbook_Open()
With Worksheets(HIDDEN_SHEET)
.Range("A1").Value = Environ("UserName")
.Range("B1").Value = Format(Date + Time, _
"dd mmm yyyy hh:mm:ss")
End With
iNextRow = 2
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, _
ByVal Target As Range)
On Error GoTo wb_exit
Application.EnableEvents = False
If Sh.Name <> HIDDEN_SHEET Then
With Worksheets(HIDDEN_SHEET)
.Range("A" & iNextRow).Value = Environ("UserName")
.Range("B" & iNextRow).Value = Format(Date + Time, _
"dd mmm yyyy hh:mm:ss")
End With
End If
wb_exit:
Application.EnableEvents = True
End Sub
NOTA: Este código deve ser colocado no próprio workbook, porque é um evento dele. Para tal, clicar no ícone que está à esquerda do comando chamado "File", no Toolbar , com a tecla direita do rato e escolher a opção "View Code". Copiar o código para o editor de VBE. Depois, sair e gravar o ficheiro. Quando se abrir novamente, ver-se-á, na Sheet3 (ou naquela que determinámos no código), o nome do utilizador, a data e hora do último acesso.
Environ Function - Microsoft Visual Basic Help (com o editor de VBE activo)
Environ Function (MSDN Library)
Environ Function Example