Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Замены значений в строке циклом (Файл более 4 млн. строк) - Страница 2 - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Замены значений в строке циклом (Файл более 4 млн. строк) (Макросы/Sub)
Замены значений в строке циклом (Файл более 4 млн. строк)
bmv98rus Дата: Среда, 03.07.2019, 23:03 | Сообщение № 21
Группа: Проверенные
Ранг: Старожил
Сообщений: 2336
Репутация: 402 ±
Замечаний: 20% ±

Excel 2013/2016
Что-то долго на таком алгоритме
Андрей, возможно из-за VBS. Он нагрузку на проц малую дает. Комп совсем несвежий но i7 и не более чем на 15% был загружен..
А построчно как читали? Я споткнулся на том, что Cr без Lf в файле TS. Ну а бежать с поиском Cr естественно гиблое дело.


Замечательный медведь, процентов на 20.

Сообщение отредактировал bmv98rus - Среда, 03.07.2019, 23:21
 
Ответить
Сообщение
Что-то долго на таком алгоритме
Андрей, возможно из-за VBS. Он нагрузку на проц малую дает. Комп совсем несвежий но i7 и не более чем на 15% был загружен..
А построчно как читали? Я споткнулся на том, что Cr без Lf в файле TS. Ну а бежать с поиском Cr естественно гиблое дело.

Автор - bmv98rus
Дата добавления - 03.07.2019 в 23:03
anvg Дата: Четверг, 04.07.2019, 08:56 | Сообщение № 22
Группа: Друзья
Ранг: Обитатель
Сообщений: 484
Репутация: 235 ±
Замечаний: 0% ±

2016, 365
что Cr без Lf в файле TS
Ну, я исходник на миллионы формировал дедовским способом :) Тот без проблем строки только с Cr читает.
[vba]
Код
ublic Sub testVba()
    Dim fIn As Integer, sLine As String, lineCount As Long
    fIn = FreeFile
    Open "C:\Path\Files\test.csv" For Input As #fIn
    lineCount = 0
    Do Until EOF(fIn)
        lineCount = lineCount + 1
        Line Input #fIn, sLine
        Debug.Print "line " & CStr(lineCount) & " -> "; sLine
    Loop
    Close #fIn
End Sub
[/vba]
Ну, а пишет уже с полноценными CrLf. Если действительно у ТС данные из таких систем CR (ASCII 0x0D) используется в 8-битовых машинах Commodore, машинах TRS-80, Apple II, системах Mac OS до версии 9 и OS-9, то код следует переделать на vbCr для разбиения на строки, ну, и на слияние тоже. Скорее всего потребуется анализ на пропуск в результате входных строк, не содержащих символ ;
 
Ответить
Сообщение
что Cr без Lf в файле TS
Ну, я исходник на миллионы формировал дедовским способом :) Тот без проблем строки только с Cr читает.
[vba]
Код
ublic Sub testVba()
    Dim fIn As Integer, sLine As String, lineCount As Long
    fIn = FreeFile
    Open "C:\Path\Files\test.csv" For Input As #fIn
    lineCount = 0
    Do Until EOF(fIn)
        lineCount = lineCount + 1
        Line Input #fIn, sLine
        Debug.Print "line " & CStr(lineCount) & " -> "; sLine
    Loop
    Close #fIn
End Sub
[/vba]
Ну, а пишет уже с полноценными CrLf. Если действительно у ТС данные из таких систем CR (ASCII 0x0D) используется в 8-битовых машинах Commodore, машинах TRS-80, Apple II, системах Mac OS до версии 9 и OS-9, то код следует переделать на vbCr для разбиения на строки, ну, и на слияние тоже. Скорее всего потребуется анализ на пропуск в результате входных строк, не содержащих символ ;

Автор - anvg
Дата добавления - 04.07.2019 в 08:56
monstr_ork Дата: Суббота, 13.07.2019, 12:58 | Сообщение № 23
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 124
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
anvg, прошу прощения, что спустя столько времени.
Начал тестировать и возникла ошибка, в функции "translate", что пользовательский тип не определен.
Помогите, пожалуйста?
 
Ответить
Сообщениеanvg, прошу прощения, что спустя столько времени.
Начал тестировать и возникла ошибка, в функции "translate", что пользовательский тип не определен.
Помогите, пожалуйста?

Автор - monstr_ork
Дата добавления - 13.07.2019 в 12:58
monstr_ork Дата: Суббота, 13.07.2019, 21:34 | Сообщение № 24
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 124
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
С ошибкой разобрался, нужно было библиотеки подключить.
Только у меня все равно ошибка возникает на последнем шаге в функции =(
 
Ответить
СообщениеС ошибкой разобрался, нужно было библиотеки подключить.
Только у меня все равно ошибка возникает на последнем шаге в функции =(

Автор - monstr_ork
Дата добавления - 13.07.2019 в 21:34
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Замены значений в строке циклом (Файл более 4 млн. строк) (Макросы/Sub)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Яндекс цитирования
© 2010-2019 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!