Eu tenho um arquivo delimitado por barras verticais que foi exportado da atualização do servidor. Existem aproximadamente 134 milhões de registros. Estou usando o Excel para importar um pequeno número de registros (1.000 a 10.000) para explorar os dados e procurar problemas antes de ler os dados em outros programas (como SAS).
Há um problema no arquivo por volta do registro 6.200, mas não consigo ler o arquivo, pois o Excel só lerá os primeiros 3.200 registros. Descobri que existem várias marcas de fim de arquivo no arquivo (o arquivo é do Linux, com o Windows encontrando 1A hex coed que marca o fim do arquivo). Alguém tem alguma ideia de como contornar isso. Meu código atual segue:
Sub Test()
file = "c:\user\myfile"
Open file For Input As #1
For i = 1 To 10000
Line Input #1, dat
Cells(i, 1) = dat
Next i
Close #1
End Sub
Responder1
Tente encontrar e substituir o valor no arquivo:
Dim CellContent as String
Dim NewCellContent as String
CellContent = 'the line you're bringing in
NewCellContent = (Worksheetfunction.Substitute([your line], chr(26),vbnullstring))
Do Until CellContent = NewCellContent
CellContent = NewCellContent
NewCellContent = Worksheetfunction.Substitute(NewCellContent,chr(26),vbnullstring)
Loop
Ou você pode usar regex.