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:  
Entre para seguir isso  
ffilgueira1000

[Resolvido] Excel, procurar primeiro valor da linha e retornar data correspondente.

Recommended Posts

Olá amigos do CH.

Preciso da ajuda de vocês.

Tenho uma planilha do excel, na linha A linha tenho um período de datas, na linha B tenho uma sequencia de letras P, e na linha C tenho uma sequencia de letras E.

Preciso do seguinte:

1) Criar uma função que identifique o local da primeira letra P e me retorne a data correspondente.

2) Criar uma outra função que identifique o local da ultima letra P e me retorne a data correspondente.

3) Criar uma função que identifique o local da primeira letra E e me retorne a data correspondente.

2) Criar uma outra função que identifique o local da ultima letra E e me retorne a data correspondente.

Eu carreguei uma planilha de amosta pra ajudar o entendimento.

http://www.sendspace.com/file/sgv6cm

valeu...

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • Obrigado pela ajuda, funcionou perfeitamente.

    Mas eu imaginava uma função direta, que não precisasse utilizar outras células auxiliares, porque a planilha que vou montar tem umas 900 linhas, e se eu acrescentar mais essas outras linhas auxiliares, vai ficar um monstro de planilha!

    Se você puder ma ajudar... eu agradeço.

    valeu...

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Pois é, essa foi a solução trivial que encontrei.

    Se você ocultar as linhas com essas fórmulas funciona também, e a planilha vai ficar com a mesma aparência.

    Acho que alguém com mais experiência pode ajudar melhor, enquanto isso vou fazendo testes aqui.

    Abraços.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Obrigado pela ajuda...

    Vamos ver se alguém pode nos ajudar né... mas se não conseguir mais nada vou usar essa sugestão sua que também funciona.

    valeu...

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Hei Patropi, isso foi perfeito hein... agora só basta conseguirmos uma fórmula similar para encontrar a primeira data.

    Eu to fuçando nessa fórmula que você me passou para tentar adaptá-la... mas até agora nada...

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Eu consegui fazer uma fórmula que acha as últimas dtas, tanto do P quanto do E.

    =TEXTO(INDIRETO(ENDEREÇO(1;SOMARPRODUTO(MÁXIMO(COL(2:2)*(2:2="P")))));"dd/mm/aa")

    CARAMBA, como é que você faz isso!?

    Parabéns...

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Pode ser por macro sim... mas a planilha que vou montar vai ter várias linhas... e a cada dia vai crescer mais...

    Então a macro vai ter que varrer toda a extensão da planilha...

    valeu...

    Hei Carlos7x

    eu carreguei uma planilha mais detalhada pra você tentar me ajudar com essa macro!

    aqui vai... http://www.sendspace.com/file/0pclpm

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Filgueira,

    trabalho com Excel 2003, por isso não posso colocar a macro no site compartilhado.

    Consegui fazer pelo gravador de macro o seguinte:

    Sub Colunas_Inicial_final()

    ' linhas 2 e 3 só com letra "P" e "E", sem intervalos

    ' teste até coluna "Z"

    Range("Z2").Select

    Selection.End(xlToLeft).Select

    Selection.End(xlToLeft).Select

    Selection.End(xlUp).Select

    Selection.Copy

    Range("B6").Select

    ActiveSheet.Paste

    Application.CutCopyMode = False

    Range("Z2").Select

    Selection.End(xlToLeft).Select

    Selection.End(xlUp).Select

    Selection.Copy

    Range("B7").Select

    ActiveSheet.Paste

    Application.CutCopyMode = False

    Range("Z3").Select

    Selection.End(xlToLeft).Select

    Selection.End(xlToLeft).Select

    Selection.End(xlUp).Select

    Selection.Copy

    Range("B8").Select

    ActiveSheet.Paste

    Application.CutCopyMode = False

    Range("Z3").Select

    Selection.End(xlToLeft).Select

    Selection.End(xlUp).Select

    Selection.Copy

    Range("B9").Select

    ActiveSheet.Paste

    Application.CutCopyMode = False

    Range("B10").Select

    End Sub

    você pode adaptar ao seu caso específico.

    Carlos

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    em F12

    =DESLOC(L12;-LIN(A1);CORRESP(VERDADEIRO;L12:ABN12<>"";0)-1)   [COLOR="Red"][B]matricial[/B][/COLOR]

    em G12

    =PROC(2;1/(L12:ABN12<>"");$L$11:$ABN$11)

    arraste para baixo

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Pessoal, muito obrigado pela ajuda de todos!

    Tanto a macro do Carlos7x como as fórmulas do osvaldomp atenderam a necessidade.

    A macro tive que adaptar para meu caso, ficou uma super macro gigante mas funciona.

    As fórmulas são mais simples e para usuários como eu que não tem experiencia em VBA é a solução mais fácil.

    valeu galera...

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Visitante
    Este tópico está impedido de receber novos posts.
    Entre para seguir isso  





    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

    ×