1
resposta

Minimo.Ses

Professor, no caso de uma possivel criação do Minimo.Ses, o aux_contador deve receber um "0", e na verificação estaria definido como (( pIntervaloValores.Cells(contador_celulas, 1) <=0 aux_retorno )

1 resposta

Olá Paulo, tudo bem com você?

Peço desculpas pela demora em obter um retorno.

Seu raciocínio está correto. No caso de fazermos uma sub-rotina para minimo_ses, teríamos que alterar a comparação para verificar o menor valor, exemplo:

pIntervaloValores.Cells(Contador_Celulas, 1) < aux_Retorno

Além disso, o valor inicial de aux_Retorno deverá ser configurado como um valor maior que qualquer valor no intervalo para garantir que o valor mínimo adequado seja encontrado. Exemplo de como podemos modificar a função para a função de mínimo:

Function Nossa_MinimoSes(pIntervaloValores As Range, pIntervaloCriterios As Range, pCriterio As String) As Variant


    'variavel para receber o valor auxiliar
    aux_Retorno = Application.WorksheetFunction.Max(pIntervaloValores) + 1
    
    
    'Para um contador indo de 1 até o limite de celulas do intervalo
    For Contador_Celulas = 1 To pIntervaloValores.Count
        
        'verificar se a linha verificada está dentro do critério especifico
        If pIntervaloCriterios.Cells(Contador_Celulas, 1) = pCriterio Then
        
            'verificar se o valor é menor que o armazenado até agora
            If pIntervaloValores.Cells(Contador_Celulas, 1) < aux_Retorno Then
                aux_Retorno = pIntervaloValores.Cells(Contador_Celulas, 1)
            End If
            
        End If
    
    Next

    'Retorno da função
    Nossa_MinimoSes = aux_Retorno

End Function

Espero ter ajudado. Continue mergulhando em conhecimento e não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Em caso de dúvidas estou à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!