Depois de um bom tempo sem postagens por aqui, hoje vou falar sobre um assunto recorrente no nosso dia a dia, a utilização de strings.
O VB possui diversas funções úteis para a utilizações de strings, neste post irei abordar uma delas.
Algo cotidiano é a criação de um array , e a necessidade de filtrar seu conteúdo baseado em alguma premissa. Muitas vezes realizamos esta tarefa percorrendo os dados um a um até encontrarmos o valor procurado, a maneira que irei apresentar a seguir é muito mas prática e rápida.
Sub Filtra_Array() 'Desenvolvida por Bruno Leite 'bruno_silva_leite@yahoo.com.br Dim x() As String Dim y As Variant Dim i As Integer 'Criando array For i = 0 To 20 ReDim Preserve x(i) x(i) = "valor_" & i Next i 'Filtrando Array x e colocando o resultado em y 'Use FALSE para retornar os valores <> Filtro 'Use TRUE para retornar os valores = Filtro y = Strings.Filter(x, "1", True, vbTextCompare) 'Exibindo resultado do Filtro For i = LBound(y) To UBound(y) Debug.Print y(i) Next i End Sub
No primeiro for do código é preenchido um array com informações de 0 a 20, depois disto o array é filtrado utilizando a função Filter, que pede como parâmetros o array a ser filtrado, o segundo é o valor procurado, o terceiro é muito interessante, caso seja verdadeiro apresenta os resultados iguais ao procurado, caso seja falso os valores diferentes e o quarto parâmetro é o tipo de comparação, neste caso uma comparação textual.
É importante também observar que o resultado do Filtro é atribuido a um novo array chamado y.
Um outro ponto a ser frisado é que esta função somente funciona para arrays unidimensionais, e não funcionará para matrizes.
Acho que é isto, em breve voltarei com a continuação deste post com outras funções úteis para strings no VB.
0 comentários:
Postar um comentário