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 )
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 )
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!