2013-05-21 2 views
5

У меня есть электронная таблица Excel 2010, и я читаю информацию из TXT-файла (и другого .xls-файла в будущем).Чтение данных из текстового файла и его разграничение

Этот текстовый файл содержит 3 элемента в строке; firtname, фамилия и должность, и каждый элемент разделяется запятой. У меня есть чтение и вставка данных в Excel, однако каждая строка вставляется в одну ячейку. Я хочу вставить каждый элемент в разные столбцы. Я знаю, что я должен попытаться разграничить, но я просто не могу понять синтаксис.

Мой вопрос: как я могу отделить каждый элемент и вставить его в свою собственную ячейку? В настоящее время я использую запятые, чтобы отделить каждый элемент от моего .txt-файла, но будущие файлы могут использовать вкладки, полные остановки, полуколоны и т. Д. Как я могу расширить его, чтобы все базы были покрыты?

Ниже мой код, и под моим кодом образец фиктивных данных

Sub FetchDataFromTextFile() 
    Dim i As Long 
    Dim LineText As String 
    Open "C:\mytxtfile.txt" For Input As #24 
    i = 2 
    While Not EOF(24) 
     Line Input #24, LineText 
     ActiveSheet.Cells(i, 2).Value = LineText 
     P = Split(Record, ",") 
     i = i + 1 
    Wend 
    Close #24 
End Sub 

Джон Доу, Boss

Джонни, Стил, менеджер

Джейн Смит, сотрудник

ПРИМЕЧАНИЕ: Компетентность в других языках программирования, однако не выполнена VB примерно через 6 или 7 лет. Кажется, я никогда не заворачиваю голову вокруг синтаксиса VB, поэтому, пожалуйста, относитесь ко мне как к новичку.

ответ

3
Sub FetchDataFromTextFile() 
    Dim i As Long 
    Dim LineText As String 
    Open "C:\mytxtfile.txt" For Input As #24 
    i = 2 
    While Not EOF(24) 
     Line Input #24, LineText 
      Dim arr 
      arr = Split(CStr(LineText), ", ") 
      For j = 1 To 
       ActiveSheet.Cells(i, j).Value = arr(j - 1) 
      Next j 
      i = i + 1 
    Wend 
    Close #24 
End Sub 

Для different delimiters, make use of the answers in here

+0

отсутствующее что-то на 'Для у = 1 To ...' –

Смежные вопросы