Notifications
Clear all

Dúvida em macro de leitura de arquivo

1 Posts
1 Usuários
0 Reactions
680 Visualizações
(@mateuslima)
Posts: 0
New Member
Topic starter
 

Pessoal, estou com um problema aqui.

Tenho uma macro que precisa ler um arquivo de dados com o seguinte formato:

392737.2917 2*392833.1601 2*392929.0286 2*393024.8971 2*393120.7656 2*393216.6341 2*393312.5026 2*393408.3711
2*393504.2396 2*393600.1081 2*393695.9766 2*393791.8451 2*393887.7135 2*393983.5820 2*394079.4505 2*394175.3190
2*394271.1875 2*394367.0560 2*394462.9245 2*394558.7930 2*394654.6615 2*394750.5300 2*394846.3985 2*394942.2670

Onde "2*" indica que o número aparece 2 vezes. E escreva em outro arquivo com 8 colunas do tipo:

392737.2917 392833.1601 392833.1601 392929.0286 392929.0286 393024.8971 393024.8971 393120.7656
393120.7656 393216.6341 393216.6341 393312.5026 393312.5026 393408.3711 393408.3711 393504.2396

Se não tivesse o "2*" o código que eu usaria seria o seguinte:

cont = 1
For ii = 1 To (N) ' copia os valores
If (cont = 9) Then
Print #aux, xx(1); xx(2); xx(3); xx(4); xx(5); xx(6); xx(7); xx(8)
cont = 1
End If
Input #Arquivo, y
xx(cont) = y
cont = cont + 1
Next
Print #aux, xx(1); xx(2); xx(3); xx(4); xx(5); xx(6); xx(7); xx(8)

Onde "Arquivo" é o arquivo de entrada e "aux" o arquivo de saída.

Agora quando o arquivo de entrada tem o "2*" o comando "Input #Arquivo, y" lê só o numero "2" e depois pula para o próximo número, não lendo o "*" nem o número colado a ele.

Vocês teriam uma sugestão de como fazer uma macro que entenda o arquivo de entrada e gere o de saída com 8 colunas numéricas somente???

 
Postado : 25/03/2015 5:54 am