Ir ao conteúdo
  • Cadastre-se
Qualidade

Nome do usuário no excel

Recommended Posts

Estou tendo uma dificuldade, estou tentando criar uma fórmula que sempre que um usuário alterar algo dentro de uma planilha, o nome desse usuário se auto-preenchera na célula em que se encontra esta fórmula. Utilizei os códigos no VBA mencionados no link abaixo, mas assim que os usuários clicam em "Habilitar Conteúdo" da planilha, a fórmula não funciona mais.

 

http://www.tomasvasquez.com.br/blog/microsoft-office/vba-retornando-o-nome-do-usuario-logado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao entendi bem você quer que quando o usuario fizer uma alteração na planilha registre o nome desse usuario em algum lugar?

 

É isso?

 

Explica de novo.

 

Se é isso Controlar alterações deve atender.

Editado por CasaDoHardware

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que entendi...o problema é que após realizar as alterações, aparece na célula o nome ex.: (usuario A), salva e fecha a planilha. 
Quando novo Usuário (usuario B), abre a mesma, as células que continham o nome (usuario A), são alteradas para o nome do usuário que esta alterando a planilha (usuario B),não ficando salvo assim o usuário que fez a alteração, mas sim o usuário que está com a planilha aberta.

 

Se for isso mantenha a sua Funcao UsuarioRede() no Modulo Padrão e insira este codigo (abaixo), no modulo da respectiva Planilha (aba):

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Formula = "=UsuarioRede()" Then
        Target.Value = UsuarioRede
    End If

End Sub

Ou se deseja para todas as planilhas (abas), cole no modulo de EstaPasta_de_trabalho:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
 If Target.Formula = "=UsuarioRede()" Then
        Target.Value = UsuarioRede
    End If
End Sub

Como utilizar: -> Na celula desejada, digite a Funcao UsuarioRede como fazia anteriormente -> =NomeUsuario() e a macro irá sobrepor a formula com nome do usuario atual, automaticamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, obrigado pelo retorno, mas vou tentar explicar novamente o que necessito.

 

O Problema: O Usuário A abre a planilha, no topo, vai aparecer uma mensagem com a opção "Habilitar Conteúdo", por ser uma planilha com VBA não confíavel. O usuário clica na opção e então a fórmula toma ação e preenche com o nome "Usuário A". O Usuário B realiza o mesmo processo e a célula se preenche com o nome "Usuário B". Quando o Usuário A abre a planilha, a célula já não preenche mais com o nome dele, nem mostra a opção "Habilitar Conteúdo".

 

O que eu preciso: Uma fórmula (com ou sem código no VBA) que preencha uma célula com o nome do usuário que abriu a planilha, no momento em que ele alterar qualquer dado da mesma. Uma fórmula que pode ser tomada como exemplo, seria a "AGORA", as únicas diferenças entre a que necessito e a fórmula "AGORA", é que a "AGORA" se atualiza no momento em que a planilha é aberta e retorna o valor da data e hora.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que entendi.. pelo menos parte do que precisa eu respondi no meu ultimo post.

 

Cole o codigo abaixo, no modulo de EstaPasta_de_trabalho: (vide img)

e para a macro seja executada automaticamente use a sua função =UsuarioRede() na celula desejada.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
 If Target.Formula = "=UsuarioRede()" Then
        Target.Value = UsuarioRede
        Target.OffSet(,1).Value = Vba.Now
    End If
End Sub

45585_imagem.jpg

Editado por Basole

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basole, desculpe o atraso para dar um parecer sobre a fórmula. Estou passando aqui para informar que estou passando por auditoria e ainda não tive tempo hábil para testa-la, mas assim que tiver estarei informando se funcionou ou não.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×