Continuaremos agora com o problema das buscas. Desta vez veremos como acumular valores em uma busca para verificar se uma quantidade mínima foi atingida. Utilizarei o mesmo exemplo dos dois tutoriais anteriores para facilitar a visualização.
Desta vez queremos conferir se a quantidade de projetos necessária foi prevista. Sabemos, no exemplo, que serão necessários 10 projetos (informado na célula G5). Veja a solução por acumulação:
Sub BuscaProdQtde()
Dim prod As String
Dim resp As String
Dim atual As String
Dim lin As Integer
Dim quant As Integer
Dim quant_atual As Integer
‘Informamos a quantidade procurada:
quant = Cells(5, COL_Proc)
resp = “”
quant_atual = 0
lin = INILIN
Do While lin <= (INILIN + NUM_Fornece – 1)
atual = Cells(lin, COL_Dados)
If atual = Cells(4, COL_Proc) Then
quant_atual = quant_atual + Cells(lin, COL_Quant)
End If
lin = lin + 1
Loop
If quant_atual = 0 Then
resp = “não encontrado”
ElseIf quant_atual < quant Then
resp = “quantidade insuficiente”
Else resp = “quantidade OK”
End If
Cells(6, COL_Proc) = resp
End Sub
Até o próximo tutorial.
2 comentários em “VBA™ para Excel™ 10: busca linear cumulativa”