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

Вход

Регистрация

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

 

= Мир MS Excel/Удаление содержимого текстовых файлов txt - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 212»
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Удаление содержимого текстовых файлов txt (Макросы/Sub)
Удаление содержимого текстовых файлов txt
mv6677 Дата: Четверг, 02.11.2017, 14:01 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Добрый день, уважаемые программисты.
Помогите с решением.

В папке по адресу C:\335729\ находится несколько текстовых документов txt.

Как макросом очистить содержимое этих текстовых документов, чтобы они были пустые ?
К сообщению приложен файл: 836563.rar(9Kb)
 
Ответить
СообщениеДобрый день, уважаемые программисты.
Помогите с решением.

В папке по адресу C:\335729\ находится несколько текстовых документов txt.

Как макросом очистить содержимое этих текстовых документов, чтобы они были пустые ?

Автор - mv6677
Дата добавления - 02.11.2017 в 14:01
RAN Дата: Четверг, 02.11.2017, 14:43 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4602
Репутация: 925 ±
Замечаний: 0% ±

2010
[vba]
Код
Sub QWQ()
    Dim fld As Object, fl As Object
    With CreateObject("Scripting.FileSystemObject")
        Set fld = .GetFolder("C:\335729")
        For Each fl In fld.Files
            If .GetExtensionName(fl.Path) = "txt" Then
                .CreateTextFile fl.Path, True
            End If
        Next
    End With
End Sub
[/vba]


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение[vba]
Код
Sub QWQ()
    Dim fld As Object, fl As Object
    With CreateObject("Scripting.FileSystemObject")
        Set fld = .GetFolder("C:\335729")
        For Each fl In fld.Files
            If .GetExtensionName(fl.Path) = "txt" Then
                .CreateTextFile fl.Path, True
            End If
        Next
    End With
End Sub
[/vba]

Автор - RAN
Дата добавления - 02.11.2017 в 14:43
mv6677 Дата: Пятница, 03.11.2017, 07:09 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
RAN, большое спасибо.
Скрипт работает.
 
Ответить
СообщениеRAN, большое спасибо.
Скрипт работает.

Автор - mv6677
Дата добавления - 03.11.2017 в 07:09
Фомулист Дата: Пятница, 03.11.2017, 15:35 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 169
Репутация: -13 ±
Замечаний: 60% ±

Excel 2003
.CreateTextFile fl.Path,

Опять я сую свой нос в чужие дела :D . Подскажите, пожалуйста, как этот код очищает содержимое txt файлов, если указанная в цитате строчка дословно переводится с английского как "создать текстовый файл по пути fl.path"?


Терпение и труд всё перетрут!

Сообщение отредактировал Фомулист - Пятница, 03.11.2017, 15:37
 
Ответить
Сообщение
.CreateTextFile fl.Path,

Опять я сую свой нос в чужие дела :D . Подскажите, пожалуйста, как этот код очищает содержимое txt файлов, если указанная в цитате строчка дословно переводится с английского как "создать текстовый файл по пути fl.path"?

Автор - Фомулист
Дата добавления - 03.11.2017 в 15:35
buchlotnik Дата: Пятница, 03.11.2017, 16:41 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3327
Репутация: 886 ±
Замечаний: 0% ±

2010, 2013, 2016 RUS / ENG
Да так и очищает - создаёт пустой файл ВМЕСТО существующего


каждому For - Next!
платная помощь:
ЯД: 410012595572239
buchlotnik@mail.ru
 
Ответить
СообщениеДа так и очищает - создаёт пустой файл ВМЕСТО существующего

Автор - buchlotnik
Дата добавления - 03.11.2017 в 16:41
Фомулист Дата: Пятница, 03.11.2017, 17:07 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 169
Репутация: -13 ±
Замечаний: 60% ±

Excel 2003
создаёт пустой файл ВМЕСТО существующего

А как макрос понимает, что пустой файл нужно создать вместо существующего, а не рядом с ним?


Терпение и труд всё перетрут!
 
Ответить
Сообщение
создаёт пустой файл ВМЕСТО существующего

А как макрос понимает, что пустой файл нужно создать вместо существующего, а не рядом с ним?

Автор - Фомулист
Дата добавления - 03.11.2017 в 17:07
RAN Дата: Пятница, 03.11.2017, 21:01 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4602
Репутация: 925 ±
Замечаний: 0% ±

2010
Цитата Фомулист, 03.11.2017 в 17:07, в сообщении № 6 ()
А как макрос понимает

что "If" это "Если"?


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение
Цитата Фомулист, 03.11.2017 в 17:07, в сообщении № 6 ()
А как макрос понимает

что "If" это "Если"?

Автор - RAN
Дата добавления - 03.11.2017 в 21:01
buchlotnik Дата: Пятница, 03.11.2017, 21:42 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3327
Репутация: 886 ±
Замечаний: 0% ±

2010, 2013, 2016 RUS / ENG
Фомулист, вы ручками пробовали создать файл с тем же именем возле существующего? получалось? макросу ничего понимать не надо - он переписывает без предупреждения - за это и отвечает аргумент, который вы в своей цитате почему-то отбросили [vba]
Код
, True
[/vba]


каждому For - Next!
платная помощь:
ЯД: 410012595572239
buchlotnik@mail.ru
 
Ответить
СообщениеФомулист, вы ручками пробовали создать файл с тем же именем возле существующего? получалось? макросу ничего понимать не надо - он переписывает без предупреждения - за это и отвечает аргумент, который вы в своей цитате почему-то отбросили [vba]
Код
, True
[/vba]

Автор - buchlotnik
Дата добавления - 03.11.2017 в 21:42
InExSu Дата: Пятница, 03.11.2017, 22:42 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 241
Репутация: 28 ±
Замечаний: 80% ±

Excel 2010
Привет!
переписывает

Вижу, что
Скрипт работает.

А как быть, если хочется сохранить аргументы файла?
 
Ответить
СообщениеПривет!
переписывает

Вижу, что
Скрипт работает.

А как быть, если хочется сохранить аргументы файла?

Автор - InExSu
Дата добавления - 03.11.2017 в 22:42
buchlotnik Дата: Пятница, 03.11.2017, 22:48 | Сообщение № 10
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3327
Репутация: 886 ±
Замечаний: 0% ±

2010, 2013, 2016 RUS / ENG
InExSu,
Цитата
аргументы файла
это что, стесняюсь спросить?


каждому For - Next!
платная помощь:
ЯД: 410012595572239
buchlotnik@mail.ru
 
Ответить
СообщениеInExSu,
Цитата
аргументы файла
это что, стесняюсь спросить?

Автор - buchlotnik
Дата добавления - 03.11.2017 в 22:48
RAN Дата: Пятница, 03.11.2017, 22:50 | Сообщение № 11
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4602
Репутация: 925 ±
Замечаний: 0% ±

2010
А как быть, если хочется сохранить аргументы файла?

Легко.
1. Открыть для записи, и записать "". Нет?
2. Презаписать аргументы. Нет? (Можно и атрибуты. :) )
3. ???????


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Пятница, 03.11.2017, 22:52
 
Ответить
Сообщение
А как быть, если хочется сохранить аргументы файла?

Легко.
1. Открыть для записи, и записать "". Нет?
2. Презаписать аргументы. Нет? (Можно и атрибуты. :) )
3. ???????

Автор - RAN
Дата добавления - 03.11.2017 в 22:50
InExSu Дата: Пятница, 03.11.2017, 22:51 | Сообщение № 12
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 241
Репутация: 28 ±
Замечаний: 80% ±

Excel 2010
аргументы файла

Пардон. Атрибуты файла.
 
Ответить
Сообщение
аргументы файла

Пардон. Атрибуты файла.

Автор - InExSu
Дата добавления - 03.11.2017 в 22:51
buchlotnik Дата: Пятница, 03.11.2017, 23:13 | Сообщение № 13
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3327
Репутация: 886 ±
Замечаний: 0% ±

2010, 2013, 2016 RUS / ENG
Ну как-то так, раз атрибуты:
[vba]
Код
If .GetExtensionName(fl.Path) = "txt" Then
Open fl.Path For Output As #1
    s = ""
    Print #1, s
    Close #1
End if
[/vba]


каждому For - Next!
платная помощь:
ЯД: 410012595572239
buchlotnik@mail.ru
 
Ответить
СообщениеНу как-то так, раз атрибуты:
[vba]
Код
If .GetExtensionName(fl.Path) = "txt" Then
Open fl.Path For Output As #1
    s = ""
    Print #1, s
    Close #1
End if
[/vba]

Автор - buchlotnik
Дата добавления - 03.11.2017 в 23:13
InExSu Дата: Пятница, 03.11.2017, 23:35 | Сообщение № 14
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 241
Репутация: 28 ±
Замечаний: 80% ±

Excel 2010
как-то так

Да. Спасибо!
 
Ответить
Сообщение
как-то так

Да. Спасибо!

Автор - InExSu
Дата добавления - 03.11.2017 в 23:35
buchlotnik Дата: Пятница, 03.11.2017, 23:41 | Сообщение № 15
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3327
Репутация: 886 ±
Замечаний: 0% ±

2010, 2013, 2016 RUS / ENG
Только [vba]
Код
s = ""
[/vba] надо перед циклом, конечно же, воткнуть - тупанул


каждому For - Next!
платная помощь:
ЯД: 410012595572239
buchlotnik@mail.ru
 
Ответить
СообщениеТолько [vba]
Код
s = ""
[/vba] надо перед циклом, конечно же, воткнуть - тупанул

Автор - buchlotnik
Дата добавления - 03.11.2017 в 23:41
RAN Дата: Суббота, 04.11.2017, 00:09 | Сообщение № 16
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4602
Репутация: 925 ±
Замечаний: 0% ±

2010
Миш, в рамках вышеизложенного
[vba]
Код
.OpenTextFile fl.Path, 2
[/vba]
Нет?


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Суббота, 04.11.2017, 00:10
 
Ответить
СообщениеМиш, в рамках вышеизложенного
[vba]
Код
.OpenTextFile fl.Path, 2
[/vba]
Нет?

Автор - RAN
Дата добавления - 04.11.2017 в 00:09
buchlotnik Дата: Суббота, 04.11.2017, 00:17 | Сообщение № 17
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3327
Репутация: 886 ±
Замечаний: 0% ±

2010, 2013, 2016 RUS / ENG
RAN, да я так сначала и зашёл, но не вышло (файл вообще не редачился) - и MSDN заявило, что теперь только 1 и 8 осталось (8 работает - но в данном случае это не то) - переделал "в лоб"; хотя не исключаю, что это просто вечер пьятницы booze


каждому For - Next!
платная помощь:
ЯД: 410012595572239
buchlotnik@mail.ru


Сообщение отредактировал buchlotnik - Суббота, 04.11.2017, 00:24
 
Ответить
СообщениеRAN, да я так сначала и зашёл, но не вышло (файл вообще не редачился) - и MSDN заявило, что теперь только 1 и 8 осталось (8 работает - но в данном случае это не то) - переделал "в лоб"; хотя не исключаю, что это просто вечер пьятницы booze

Автор - buchlotnik
Дата добавления - 04.11.2017 в 00:17
RAN Дата: Суббота, 04.11.2017, 00:25 | Сообщение № 18
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4602
Репутация: 925 ±
Замечаний: 0% ±

2010
Тады ОЙ! booze pray


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеТады ОЙ! booze pray

Автор - RAN
Дата добавления - 04.11.2017 в 00:25
buchlotnik Дата: Суббота, 04.11.2017, 00:47 | Сообщение № 19
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3327
Репутация: 886 ±
Замечаний: 0% ±

2010, 2013, 2016 RUS / ENG
[offtop]Проверил - в VBS[vba]
Код
.OpenTextFile filename, 2
[/vba] как и раньше есть, а в VBA - действительно нет, пичаль :( wine [/offtop]


каждому For - Next!
платная помощь:
ЯД: 410012595572239
buchlotnik@mail.ru


Сообщение отредактировал buchlotnik - Суббота, 04.11.2017, 00:58
 
Ответить
Сообщение[offtop]Проверил - в VBS[vba]
Код
.OpenTextFile filename, 2
[/vba] как и раньше есть, а в VBA - действительно нет, пичаль :( wine [/offtop]

Автор - buchlotnik
Дата добавления - 04.11.2017 в 00:47
RAN Дата: Суббота, 04.11.2017, 12:35 | Сообщение № 20
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4602
Репутация: 925 ±
Замечаний: 0% ±

2010
Миш, у тебя VBA в бокал ныряет?
Проверил в VBA - все в порядке,
как и раньше есть


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеМиш, у тебя VBA в бокал ныряет?
Проверил в VBA - все в порядке,
как и раньше есть

Автор - RAN
Дата добавления - 04.11.2017 в 12:35
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Удаление содержимого текстовых файлов txt (Макросы/Sub)
Страница 1 из 212»
Поиск:

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