Folha excel de conversão automática


#1

Olá. Preciso de ajuda para o seguinte. Não domino o excel ao nível da programação mais avançada. Precisava de uma folha excel que me convertesse em classificação final o numero de voltas que uma criança faz em determinado teste físico, mediante uma tabela existente:

ou seja, a tabela interpreta-se da seguinte forma:
uma criança de 14 anos, masculina, que tenha feito 2 voltas, teria uma classificação de 16% ou 3,2 Valores.

a minha ideia era que eu tivesse uma tabela, que ao inserir o numero de voltas, me aparecesse a classificação final automaticamente!!

Caso me possam ajudar, por favor peçam-me o ficheiro excel na totalidade
OBRIGADO


#2

Envie seu arquivo por favor…

andre.todimo@gmail.com


#3

Boa Tarde, veja se é isso:

Exemplo.xlsm (22,7 KB)


#4

@Paulo1970, criei um exemplo pra vc se basear. Segue: Pasta1.xlsx (12,5 KB)


#5

Boa Tarde. Vou ver. Obrigado


#6

Olá Xavier. É quase isso….
A minha ideia é eu conseguir inserir o nome do aluno (masculino e/ou feminino), a idade, o nº de voltas e automaticamente aparecer a classificação. Se me permites, envio-te o ficheiro completo para ficares com uma ideia do que quero.

Tabela Vai Vem.xlsx (20,7 KB)


#7

@Paulo1970, aí a coisa fica longa e complexa o suficiente para forçar que dividamos a fórmula em células diferentes, deixando ruim para manipular e dar manutenção. Talvez nem seja possível (eu tentei e ficou tão grande que o Excel não permitiu).

Sendo assim, criei uma função personalizada para este fim:

Public Function CLASSIFICACAO(ByVal Sexo As String, ByVal Idade As Integer, ByVal Voltas As Integer, ByVal Tipo As Byte) As Integer

        ' Define a coluna a buscar de acordo com a idade
        Dim Coluna As Byte
        Select Case Idade
            Case 9
                Coluna = 3
            Case 10
                Coluna = 4
            Case 11
                Coluna = 5
            Case 12
                Coluna = 6
            Case 13
                Coluna = 7
            Case 14
                Coluna = 8
            Case 15
                Coluna = 9
            Case 16
                Coluna = 10
            Case 17
                Coluna = 11
            Case Else
                Coluna = 12
        End Select
        
        ' Define a linha inicial de acordo com o sexo
        Dim Linha As Integer
        Linha = IIf(Sexo = "Masculino", 3, 106)
        
        ' Busca a linha correspondente ao múmero de voltas
        Dim i As Integer
        Do While Planilha1.Cells(Linha, Coluna).Value2 <> Voltas
            Linha = Linha + 1
        Loop
        
        ' Retorna a classificação
        CLASSIFICACAO = IIf(Tipo = 0, Planilha1.Cells(Linha, 1).Value2, Planilha1.Cells(Linha, 2).Value2)

End Function

Também registrei a função no arquivo. Sendo assim, você pode encontrá-la com suas descrições na guia Fórmulas, no grupo Biblioteca de Funções na categoria Pesquisa e Referência.


#8

Obrigadão Xavier. Vou fazer isso.