Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.97/29: Рейтинг темы: голосов - 29, средняя оценка - 4.97
mrzike
0 / 0 / 0
Регистрация: 03.10.2010
Сообщений: 2
1

Табуляция текста в VBA

06.10.2010, 18:20. Просмотров 5483. Ответов 3
Метки нет (Все метки)

Доброго времени суток, форумчане!

Проблема такая:
1. Необходимо открыть файл "1.txt", в котором построчно записаны имена и фамилии через табуляцию, вида:
ИванTABИванов
ПетрTABПетров
...
2. Каждую строчку скопировать в массив alltxt причём:
alltxt(0) - Имя
alltxt(1) - Фамилия
Начал решать данную задачу и не получил ожидаемого результата:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Public Sub txt()
   Dim FileNum As Integer
   Dim txt As String
   Dim alltxt() As String
    FileNum = FreeFile
     Open "c:\1.txt" For Input As FileNum
     Do Until EOF(FileNum)
     Line Input #FileNum, txt
     alltxt = Split(txt, "vbTab")
     MsgBox alltxt(0)
     Loop
    Close #FileNum
End Sub
По-идее MsgBox alltxt(0) должен выводить окошко с именем (Иван) из файла (после разбиения split-ом), на самом же деле выводится полностью вся строка "ИванTABИванов".
Пробовал подключать разделитель формата "char(9)" - результата не дало.
Одним местом чувствую что дело в кодировке... (текстовый файл по-умолчанию Блокнота записан в ANSI).
Подскажите какой-нибудь вариант решения проблемы.
Спасибо!

P.S. Начал разбираться в VBA 5 дней назад, потому если что-то "топорно" сделал, буду благодарен за критику!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.10.2010, 18:20
Ответы с готовыми решениями:

Перевод строки и табуляция
Как сделать, чтобы текст располагался в несколько строк. Также нужна функция...

Табуляция! Необходимо исправить программу
По первой формуле считает верно, переходит на вторую и третью-выдаёт не верные...

Удалить из текста символ «:» и подсчитать длину сформированного текста.
Удалить из текста символ «:» и подсчитать длину сформированного текста.помогите...

Табуляция для текста
Здравствуйте! Возникла такая проблема. Есть текст и произвольная табуляция для...

Табуляция текста в Notepad++
Добрый день! Помогите пожалуйста с такой проблемой: есть .xml документ, в...

3
Alex77755
10738 / 3311 / 549
Регистрация: 13.02.2009
Сообщений: 9,746
06.10.2010, 21:11 2
Для определения табулятора сделай печать посимвольно в дебаггер
типа
Visual Basic
1
2
3
For i = 1 To Len(txt)
Debug.Print i, Mid(txt, i, 1), Asc(Mid(txt, i, 1))
Next
1
Vlanib
Частенько бываю
744 / 326 / 42
Регистрация: 20.06.2007
Сообщений: 854
07.10.2010, 08:44 3
Зачем кавычки то?
Visual Basic
1
alltxt = Split(txt, vbTab)
Добавлено через 1 минуту
И как вы составляете переменную txt?
1
mrzike
0 / 0 / 0
Регистрация: 03.10.2010
Сообщений: 2
07.10.2010, 10:30 4
Зачем кавычки то?
Visual Basic
1
alltxt = Split(txt, vbTab)
Всё правильно, дело в кавычках было, теперь работает. Спасибо огромное!!!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.10.2010, 10:30

Табуляция (сдвиг) выделенного текста в RichEdit с использованием созданной кнопки
Нужно чтобы при нажатии на button, выделенный текст сместился...

Напишите функцию escape (s,t), которая при копировании текста из t в s преобразует такие символы, как новая строка и табуляция в символы "_"
help me)

Форматирование текста в VBA
доброго времени суток! есть форма с текстбоксом куда вводится текст, можно ли...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru