Aqui está o código VBA modificado para gerar todos os endereços IP dentro de uma faixa especificada:
Sub GeradorDeIP()Dim inicio As StringDim fim As StringDim ipCompleto As StringDim path As String, arquivo As Stringinicio = Range("A1").Value ' IP inicial da faixafim = Range("B1").Value ' IP final da faixapath = Range("C1").Value ' Caminho para salvar os IPs geradosClose #1Dim ipPartes() As StringDim a As IntegerDim b As IntegerDim c As IntegeripPartes = Split(inicio, ".")a = CInt(ipPartes(0))b = CInt(ipPartes(1))c = CInt(ipPartes(2))For d = CInt(ipPartes(3)) To CInt(Split(fim, ".")(3))ipCompleto = a & "." & b & "." & c & "." & darquivo = path & "\" & ipCompleto & ".txt"Open arquivo For Output As #1Print #1, ipCompletoClose #1Next dMsgBox "A geração de IPs foi concluída com sucesso!"End Sub
Explicação do código:
A função GeradorDeIP é criada para gerar todos os endereços IP dentro de uma faixa especificada.
As variáveis inicio, fim e path são usadas para armazenar o IP inicial da faixa, o IP final da faixa e o caminho onde os IPs gerados serão salvos, respectivamente. Esses valores são obtidos a partir das células A1, B1 e C1 na planilha ativa.
A instrução Close #1 é utilizada para garantir que qualquer arquivo previamente aberto seja fechado antes de começar a gerar os IPs.
A matriz ipPartes é criada para armazenar as partes do IP inicial da faixa separadas por ponto.
As variáveis a, b e c são inicializadas com as partes do IP para o primeiro loop.
Um loop For é usado para percorrer os valores da parte do IP final da faixa.
O IP completo é construído concatenando as partes a, b, c e d.
O caminho completo do arquivo é gerado concatenando o caminho path com o IP completo e a extensão ".txt".
O arquivo é aberto em modo de saída (Output) utilizando o número de arquivo #1.
O IP completo é gravado no arquivo utilizando a instrução Print #1, ipCompleto.
O arquivo é fechado utilizando a instrução Close #1.
O loop continua até que todos os valores da parte do IP final da faixa sejam percorridos.
Uma mensagem de confirmação é exibida ao final do processo.
0 Comentários