Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Giancarlo de Oliveira

EXCEL Horario fixo

Recommended Posts

Boa noite,

 

Caros é possível ao inserir um texto dentro da célula A1, na celular B1 seja mostrado o horário

em que o texto foi inserido, onde mesmo que eu altere ou apague o conteúdo de A1 a hora registrada

em B1 não seja apagada ou atualizada ? Preciso que essa rotina não dependa de um botão.

 

Estou a semanas procurando uma forma de fazer essa rotina, naveguei algumas postagens aqui 

do fórum, na internet já diversas abordagens, mas não encontrei nada que resolvesse isso.

 

Nas soluções que tentei a hora sempre acaba sendo atualizada, ou o registro da fica condicionado

ao uso de botão.

 

Fiquem com Deus

Abraço

Giancarlo

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Experimente esse codigo

 

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub

If Range("A" & Target.Row).Value <> "" Then
   Range("B" & Target.Row).Value = Time
  
End If

End Sub

 

 

 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • Vou tentar aqui e já digo se deu certo.

    Mas muito obrigado adiantado

    adicionado 12 minutos depois
    Em 01/05/2017 às 11:22, CasaDoHardware disse:

    Experimente esse codigo

     

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column <> 1 Then Exit Sub

    If Range("A" & Target.Row).Value <> "" Then
       Range("B" & Target.Row).Value = Time
      
    End If

    End Sub

     

     

     

    Casa do Hardware,

     

    Seu código já atendeu 50% da minha situação :thumbsup:

    Ainda preciso que se um usuário altere ou exclua o valor já digitado em qualquer célula da coluna A,

    a hora mostrada na coluna B, não seja atualizada ou deixe de ser mostrada.

     

    você acha possível algo desse tipo ?

     

    Super, mega obrigado por enquanto irmão.

     

     

    adicionado 16 minutos depois

    Ah...

    Eu disse que atendeu 50% do problema, por que seu código já está fazendo a parte de na coluna B

    mostrar a hora ao inserir um valor em qualquer célula da coluna A. Falta essa parte que comentei, onde

    se um usuário alterar ou excluir algum valor de células da coluna A, a hora que ficou registrada nas

    células coluna B não sejam alteradas ou perdidas.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Mas o codigo faz isso.

     

     

    O que esta acontecendo de diferente?

     

    Se você inserir dados a celula registar a hora se apagar a hora permanece sem alteração.

     

    Os testes que fiz aqui funcionaram dessa forma.

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • 19 horas atrás, CasaDoHardware disse:

    Mas o codigo faz isso.

     

     

    O que esta acontecendo de diferente?

     

    Se você inserir dados a celula registar a hora se apagar a hora permanece sem alteração.

     

    Os testes que fiz aqui funcionaram dessa forma.

    Usei o código em uma planilha em branco (nova) e também na versão em que estou trabalhando,

    mas nos dois casos acontece o mesmo. Quando digito algum valor em qualquer célula da coluna A, 

    surge o horário na célula ao lado, ou seja coluna B. Até aí beleza.

     

    Mas se apagar ou modificar o conteúdo da célula em que a pouco digitei algo, a hora mostrada na

    coluna B é atualizado. Tentei uma porção de vezes, mas em todos casos sempre ocorre a atualização 

    da hora.

     

    Posso estar fazendo de errado, mesmo estando em uma planilha em branco (nova) ?

    Você tem alguma planilha com esse função funcionando de forma que a hora mostrada

    na coluna B não seja recalculada quando a valor da célula ao lado é alterado ?

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Experimente este

     

    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim li As Long

    li = ActiveCell.Row

    If Cells(li, 2).Value <> "" Then Exit Sub

    If Target.Column <> 1 Then Exit Sub
    If Range("A" & Target.Row).Value <> "" Then
       Range("B" & Target.Row).Value = Time
      
    End If

    End Sub
     

     

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • CasaDoHardware funcionou :thumbsup::thumbsup::thumbsup::thumbsup:

    Percebi algo que não sei se você havia reparado também

     

    Se eu digitar algo em A3, em B3 surge a hora atual, até aí beleza...

    Mas se eu acessar A3 novamente sem ter digitado nada em outra

    célula e alterar o valor de A3 a hora é atualizada.

     

    A hora só fica congelada como eu preciso se:

    Apos digitar algo em A10 (por exemplo) a hora vai surgir em B10, beleza...

    Em seguida eu devo digitar algo em qualquer outra célula da coluna A, por

    exemplo A15, agora sim, se eu voltar para A10 e mudar o valor contido

    nessa célula a hora que está em B10 não é mais atualizada.

     

    Apesar desse pequeno detalhe, a função ficou show. Vai servir para minha

    planilha numa boa.

     

    Mega obrigado pelo código, quase desisti de conseguir...rs

    Ótimo final de semana. 

    Fique com Deus.

     

    Att.

    Gian 

     

     

    adicionado 3 minutos depois

    Patropi,

     

    Vou testar mais a noite e dou um retorno.

    Eu dei uma lida no código e parece que vai servir sim, muito obrigado pelo Link.

     

    Obrigado pela parceria.

    Editado por Giancarlo de Oliveira

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • @Patropi

    Estou usando sua sugestão de código :thumbsup:

    Minha planilha complementar, precisou de um modelo muito parecido ao código que você sugeriu,

    nem precisou de muita mudança...:)

    Muito grato pela ajuda.

     

    Ótima semana. 

     

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Boa noite,

     

    Amigos usei o seguinte código do @CasaDoHardware

    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim li As Long

    li = ActiveCell.Row

    If Cells(li, 2).Value <> "" Then Exit Sub

    If Target.Column <> 1 Then Exit Sub
    If Range("A" & Target.Row).Value <> "" Then
       Range("B" & Target.Row).Value = Time
      
    End If

    End Sub

     

    Mas queria expandir o uso desse código para utiliza-lo referenciado em outras 

    colunas da minha planilha.

    Nessa versão ele já funciona referenciado nas colunas A e B, onde ao inserir

    algum valor em células da coluna A, na célula ao lado (coluna ) surge a hora.

     

    Tentei  alterar alguns parâmetros desse código para que ele também faça essa

    função referenciado por exemplo:

    ao inserir algum dado em células da H, na mesma e na coluna M apareça a hora.

    É possivel ?

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Bom dia Giancarlo

     

    Experimente este código que adaptei para uma dúvida em outro fórum, que faz o seguinte:

    -Quando digito alguma coisa na coluna A, aparece a hora automaticamente na coluna B

    - Quando digito alguma coisa na coluna C, aparece a hora automaticamente na coluna D

    - Quando digito alguma coisa na coluna E, aparece a hora automaticamente na coluna F

    - Quando digito alguma coisa na coluna G, aparece a hora automaticamente na coluna H

    Private Sub Worksheet_Change(ByVal Target As Range)
        If Not Intersect(Target, Range("A1:A100,C1:C100,E1:E100,G1:G100")) Is Nothing Then
            If Target.Value <> 0 Then
                Target.Offset(0, 1) = Str(Time)
            End If
        End If
    End Sub

    é só você adaptar as colunas que você deseja e também ao numero de linhas

     

    Dê retorno.

     

    []s

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Boa noite,

     

    Patropi, o código atende metade da premissa. 

    Com esse código consegui alterar as referencias de coluna e isso já é muito bom :D

    Mas quando alteramos os valores de alguma célula que eu já tenha inserido algum dado

    a hora acaba sendo atualizada. 

     

    No meu caso preciso que após a hora surgir pela 1º vez ela não se atualize mais, mesmo

    mudando o valor de alguma célula que já foi preenchida. 

     

    Tenho um outro projeto que esse código já está me ajudando :thumbsup:

    Já agradeço de qualquer forma.

    Abraço irmão.

     

     

    Att.

    Gian

    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






    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

    ×