Как использовать код VBA для удаления пустых строк из текстового файла

Если вы когда-либо работали с текстовыми файлами, вы будете знать, насколько неприятным может быть удаление пустой строки. Частично проблема заключается в том, что вы не хотите удалять каждую пустую строку, потому что это может нарушить форматирование документа.

Эта статья покажет вам, как удалить фиксированное количество пустых строк из текстового файла, используя здоровую кодировку VBA.

Открытие и чтение текстового файла

Логика кода заключается в чтении каждой строки файла и сохранении строки в текстовой строке, если она соответствует нашим критериям. Затем напишите текстовую строку обратно в новый файл.

Сначала мы получим доступ к объекту файловой системы (FSO) и откроем файл с именем «blanks.txt». Код доступа к файловой системе — это тип процедуры, которая может храниться в библиотеке кодов, чтобы ее можно было использовать в будущем.

Dim fso As Scripting.FileSystemObject

Set fso = New Scripting.FileSystemObject
Dim myFile As Object
Dim filePath As String

filePath = ActiveWorkbook.path & " files blanks.txt"
Установите myFile = fso.openTextFile (filePath)

Удаление пустых строк

Теперь мы можем прочитать каждую строку в файле, но сначала мы должны рассмотреть код, который нам нужен, чтобы отклонить пустые строки.

Мы начнем с определения нескольких переменных и присвоения им начальных значений.

"Присоединить строку к новому файлу?

Dim includeLine As Boolean

& # 39; Текстовая строка для записи прикрепленных строк
Dim allTxt как строка

& # 39; Количество пустых строк, включаемых в новый файл
Dim CountBlanks As Long

countBlanks = 1
includeBlanks = 0
includeLine = False

Первоначальная настройка пустых строк установлена ​​на 1, поэтому мы не беспокоим ни один абзац. Если бы мы хотели удалить любую пустую строку, мы установили бы переменную в 0.

Теперь мы можем прочитать файл и сообщить коду, какие строки сохранить в новом файле.

Выполнить в myFile.AtEndOfStream

includeLine = False

txt = myFile.ReadLine

По умолчанию для каждой строки не помещается в новый файл, если только он не соответствует критериям, указанным в нескольких последующих строках кода. Количество пустых строк подсчитывается до тех пор, пока не будет найдена непустая строка, а затем счетчик будет сброшен на ноль.

        Выберите Case Len (TXT)

Дело 0

Если countBlanks <includeBlanks, то includeLine = True

countBlanks = countBlanks + 1

Дело остальное

countBlanks = 0

includeLine = True

Готово Выбрать

Если строка соответствует нашим параметрам, мы добавляем ее с символом новой строки в строку txt и продолжаем цикл.

Если вы включите Line тогда

allTxt = allTxt & txt и vbCrLf
Конец, если
петля

После окончания чтения текстового файла закройте файл и введите текстовую строку в новый файл.

myFile.close

filePath = ActiveWorkbook.path & " files blanksRemoved.txt"
Установите myFile = fso.CreateTextFile (filePath)
myFile.Write allTxt
myFile.close
Установить fso = ничего

При таком редактировании файлов важно не заменять исходный файл в случае, если произойдет что-то непредвиденное и все данные будут потеряны. Даже если вы уверены, что код работает правильно, рекомендуется сделать копию, используя VBA, для защиты исходных данных.

резюме

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

Как использовать код VBA для удаления пустых строк из текстового файла: 0 комментариев

  • 24.05.2020 в 11:53
    Permalink

    Ваш комментарий ожидает проверки.

    И, заметьте, предлагаем вам сыграть бесплатно и без регистрации. В коллекции присутствуют разные аппараты, которые в любом случае найдут своего пользователя, вне зависимости от его требований и целей. Ниже потребуется дать согласие на рассылку рекламу и новостей от портала или же отказаться от нее, где запрещается своим бизнесменам становиться владельцами казино. Окрашиваем металлические кольца бочки в чёрный цвет. На сегодня существует немало вариантов по-настоящему качественного времяпровождения, причем одним из наиболее интересных предложений небезосновательно считается игра в автоматы онлайн бесплатно. На нашем сайте вы можете совершенно бесплатно играть в игровые автоматы онлайн без регистрации. Играйте в новые слоты sunkuban.ru бесплатно и без регистрации на нашем сайте, не пропустите. Но как внести яркое разнообразие в одинаковые серые будни и скучные выходные. В клубе Pharaonbet вы найдете не только новейшие игровые автоматы, новые игры, такие как рулетка и прочие, также будут регулярно появляться. Ведь только у нас можно в игровые автоматы играть бесплатно без регистрации используя игровой зал, как для обучения, так и для организации бесплатного азартного досуга. Подключаем тумблер включения и разъём подсоединения питания. Все очень просто: достаточно выбрать игру, щелкнуть по ее значку, и можно наслаждаться игровым процессом.

    Ответ

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *