Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Office (Word, Excel, Outlook и т.д.) (http://forum.oszone.net/forumdisplay.php?f=115)
-   -   [решено] Как удалить все строки в Word 2010 по результатам работы "Поиск" и "Заменить"? (http://forum.oszone.net/showthread.php?t=340524)

flev45 15-05-2019 10:55 2871790

Как удалить все строки в Word 2010 по результатам работы "Поиск" и "Заменить"?
 
Как удалить все строки в Word 2010 по результатам работы "Поиск" и "Заменить"?
Есть текст, часть которого прилагаю. 2 первые строки получил вручную.
Остальные строки текста (20-30 страниц), желательно получить используя функции "Поиск" и "Заменить".
Например, как удалить все строки с "жирным" текстом, в начале которого стоит "точка"?
Или отыскал все строки с "Laden der Transaktionsdetails". Как их все удалить, не вручную?
Спасибо.

Iska 15-05-2019 13:28 2871810

1а. «2 первые строки» у Вас выглядят совсем не так, как Вы думаете. Включите отображение непечатных символов (в том числе — скрытого текста) и увидите:
Скрытый текст

1б. Правильнее говорить не «строка», а «абзац».

2а. В начале абзаца не «стоит "точка"», а находится метка многоуровневого списка:
Скрытый текст

2б. Ничего «удалять» не нужно. В Вашем случае досточно тупо скопировать формат с любой отличной строки и протянуть его на весь текст:
Скрытый текст


gifv не поддерживается, потому просто ссылка на анимацию: https://i.imgur.com/27Reecw.gifv


3.
Цитата:

Цитата flev45
Или отыскал все строки с "Laden der Transaktionsdetails". Как их все удалить, не вручную? »

Например, так:
Скрытый текст

Код:

Option Explicit

Sub Sample()
    Dim objParagraph As Paragraph
   
    For Each objParagraph In ThisDocument.Content.Paragraphs
        If InStr(1, objParagraph.Range.Text, "Laden der Transaktionsdetails", vbTextCompare) > 0 Then
            objParagraph.Range.Delete
        End If
    Next objParagraph
End Sub


Vadikan 15-05-2019 19:13 2871885

flev45,
Количество ваших тем, у которых ноги растут из одной задачи, зашкаливает. Это не запрещено правилами, но конкретная задача при этом толком не озвучена. А если она в том, чтобы экспортировать список транзакций PayPal в удобный для дальнейшего анализа вид, то есть экспорт в CSV.

Код:

Date,"Time","TimeZone","Name","Type","Status","Currency","Amount","Receipt ID","Balance"

Iska 15-05-2019 19:38 2871891

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

flev45 16-05-2019 12:01 2871978

Цитата:

Цитата Iska
Цитата flev45:
Или отыскал все строки с "Laden der Transaktionsdetails". Как их все удалить, не вручную? »
Например, так:
Option Explicit
Sub Sample()
Dim objParagraph As Paragraph
For Each objParagraph In ThisDocument.Content.Paragraphs
If InStr(1, objParagraph.Range.Text, "Laden der Transaktionsdetails", vbTextCompare) > 0 Then
objParagraph.Range.Delete
End If
Next objParagraph
End Sub »

Уважаемый, ваш макрос ничего не меняет.
Установил все разрешения, записал макрос, запустил по "выплнить", никаких сообщений.
Посмотрел по "Изменить" - Ваш макрос на месте...
Но 2 строки с "Laden der Transaktionsdetails" как были, так и остались.

Iska 16-05-2019 12:15 2871985

flev45, покажите, куда Вы его записали. Меня интересует обрезанная левая часть:
Скрытый текст


Цитата:

Цитата flev45
Уважаемый, ваш макрос ничего не меняет. »

У меня — удаляет искомые абзацы. Я имею привычку проверять выкладываемый код. Если я его не проверяю — я так и указываю: «(не проверялось)».

flev45 16-05-2019 12:28 2871991

Как эту левую часть вызвать? У меня её нет...

flev45 16-05-2019 12:33 2871993

Нажал "Отладка", появилась 1-я строка макроса на выполнение... это пошаговый режим?

Vadikan 16-05-2019 12:33 2871994

Ctrl+R

flev45 16-05-2019 12:36 2871995

Сделал

Vadikan 16-05-2019 12:40 2871997

flev45, теперь сравните с картинкой в посте 2 под последним спойлером.

Iska 16-05-2019 12:49 2872000

flev45, удалите модуль NewMacros из шаблона Normal.dotm, скопируйте вышеуказанный код в буфер обмена и затем вставьте его в модуль ThisDocument документа «Apr 28 2019 eBay.docx». Либо поменяйте в коде объект «ThisDocument» на «ActiveDocument» и сделайте перед выполнением кода искомый документ активным.

flev45 16-05-2019 12:52 2872001

Цитата:

Цитата Vadikan
flev45, теперь сравните с картинкой в посте 2 под последним спойлером. »

Убираю "Normal", макрос пропадает...
Что ж я не так сделал?

...
Цитата:

Цитата Iska
flev45, удалите модуль NewMacros из шаблона Normal.dotm, скопируйте вышеуказанный код в буфер обмена и затем вставьте его в модуль ThisDocument документа «Apr 28 2019 eBay.docx». Либо поменяйте в коде объект «ThisDocument» на «ActiveDocument» и сделайте перед выполнением кода искомый документ активным. »

Дайте мне "удочку"... удалил, скопировал, вставил в модуль ThisDocument.
Макрос в списке для запуска отсутствовал. Запустил по кнопке, всё сработало:)
Что не так я сделал, чтобы запускать макрос по кнопке "выполнить", причём для любых следующих документов?
Как я понял, это способ "заплатки" на то, что я навоял... создать новый макрос и проследить, чтобы он был в «ActiveDocument»? Спасибо.

Iska 16-05-2019 14:03 2872009

Цитата:

Цитата flev45
для любых следующих документов? »

Так:
Цитата:

Цитата Iska
Либо поменяйте в коде объект «ThisDocument» на «ActiveDocument» и сделайте перед выполнением кода искомый документ активным. »

Цитата:

Цитата flev45
и проследить, чтобы он был в «ActiveDocument»? »

Нет. В коде поменять объект «ThisDocument» на «ActiveDocument»:
Код:

Option Explicit

Sub Sample()
    Dim objParagraph As Paragraph
   
    For Each objParagraph In ActiveDocument.Content.Paragraphs
        If InStr(1, objParagraph.Range.Text, "Laden der Transaktionsdetails", vbTextCompare) > 0 Then
            objParagraph.Range.Delete
        End If
    Next objParagraph
End Sub

и оставить макрос в шаблоне Normal.dotm.

flev45 16-05-2019 14:31 2872012

Цитата:

Цитата flev45
как удалить все строки с "жирным" текстом, в начале которого стоит "точка"? »

И последнее: как удалить/убрать из документа все эти строки?

Iska 16-05-2019 14:35 2872014

Цитата:

Цитата flev45
И последнее: как удалить/убрать из документа все эти строки? »

Сообщение #2, п. 2б. Или Вы хотите именно удалить данные строки абзацы?

flev45 16-05-2019 14:36 2872015

Цитата:

Цитата Iska
1б. Правильнее говорить не «строка», а «абзац».
2а. В начале абзаца не «стоит "точка"», а находится метка многоуровневого списка:
Скрытый текст
2б. Ничего «удалять» не нужно. В Вашем случае досточно тупо скопировать формат с любой отличной строки и протянуть его на весь текст: »

Я пробовал так делать. Появляется символ "метла"... что с ним делать, чтобы всё это удалить?
Цитата:

Цитата Iska
Сообщение #2, п. 2б. Или Вы хотите именно удалить данные строки абзацы? »

Да, удалить. Мне эти абзацы не нужны:)

Iska 16-05-2019 14:50 2872019

Цитата:

Цитата flev45
что с ним делать, чтобы всё это удалить? »

Протянуть от начала документа до конца. Тем самым Вы скопируете формат выделенного абзаца все те, поверх которых протянете эту «метлу». Проще всего делать эту протяжку слева от текста, вдоль полей: https://i.imgur.com/27Reecw.gifv.

А, не нужны… Не дочитал. Ну, давайте попробуем удалить все абзацы, оформленные списком. Делать?

P.S. Вы зря не хотите использовать это. Экспортировали, открыли в Excel/Word/Access, отформатировали по своему желанию — и готово. Быстро и просто.

flev45 16-05-2019 15:06 2872023

Цитата:

Цитата Iska
А, не нужны… Не дочитал. Ну, давайте попробуем удалить все абзацы, оформленные списком. Делать?
P.S. Вы зря не хотите использовать это. Экспортировали, открыли в Excel/Word/Access, отформатировали по своему желанию — и готово. Быстро и просто. »

Конечно делать!
ПС: там есть своя специфика. ПайПал в этих файлах даёт подробнейшую инфу, включая свои внутренние заморочки, которая мне не нужна. Я выделил весь текст с HTML и перенёс его в word... а там всё тоже быстро, с Вашей помощью:)

Iska 16-05-2019 15:32 2872025

Цитата:

Цитата flev45
ПайПал в этих файлах даёт подробнейшую инфу, включая свои внутренние заморочки, которая мне не нужна. »

Ничто не мешает исключить эту информацию при импорте данных из .csv. Так Вы сделаете это один раз — и навсегда.

Попробуйте посмотреть: Microsoft Excel Получение внешних данных - Поиск в Google, может, понравится?!

Vadikan 16-05-2019 16:14 2872028

Цитата:

Цитата flev45
ПайПал в этих файлах даёт подробнейшую инфу, включая свои внутренние заморочки, которая мне не нужна. Я выделил весь текст с HTML и перенёс его в word... а там всё тоже быстро, с Вашей помощью »

Ваша возня даже рядом не стоит с CSV. Им можно хоть внешним скриптом манипулировать и получать на выходе xlsx. Поэтому заявления про лишние данные лишь продолжение неправильно поставленной задачи.

Iska, я не уверен, что можно тянуть в excel из PayPal. Он в ответ на веб-запрос генерит отчёт и присылает письмо по готовности - иди качай. Особых настроек исключения данных там нет, всего три варианта отчета.

flev45 16-05-2019 16:17 2872030

Цитата:

Цитата Iska
Ничто не мешает исключить эту информацию при импорте данных из .csv. Так Вы сделаете это один раз — и навсегда. »

То, что я сейчас, с Вашей помощью, уже сделал на 2/3 документов - это один раз и навсегда.
Больше мне эта инфа не понадобится, в будущем.
Если можете, то сделайте пожалуйста то, чем я могу удалить все эти абзацы.

Цитата:

Цитата Vadikan
Ваша возня даже рядом не стоит с CSV. »

Что я могу поделать, PayPal почему-то не выдаёт мне CSV файлы за 2016 - 2017 годы. "календарный" выбор дат не работает... разбираться почему - больше уйдёт времени на переписку с ними и т.д... да ещё и не на русском.

Vadikan 16-05-2019 16:32 2872035

Цитата:

Цитата flev45
PayPal почему-то не выдаёт мне CSV файлы за 2016 - 2017 годы. "календарный" выбор дат не работает. »

У меня даже в браузере на телефоне работает, просто надо обе даты ткнуть.

flev45 16-05-2019 16:44 2872037

Цитата:

Цитата Vadikan
У меня даже в браузере на телефоне работает, просто надо обе даты ткнуть. »

У меня немецкий ПайПал. О заморочках. По каждой покупке ПайПал выдаёт 3-4 дато-строки в файле:
мгновенная оплата, дата запроса денег со счёта, дата получения денег ПайПал... в 3 раза больше, чем мне надо.
Мне проще скопировать "конечную" инфу с сайта.

Vadikan 16-05-2019 17:20 2872039

Цитата:

Цитата flev45
выдаёт 3-4 дато-строки в файле: »

Это все фильтруется легко в графическом интерфейсе экселя, да хоть сводные таблицы стройте по нужным атрибутам. Заодно Эксель освоите немного.

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

Iska 16-05-2019 17:24 2872041

Цитата:

Цитата Vadikan
Iska, я не уверен, что можно тянуть в excel из PayPal. »

Я именно про импорт экспортированного из PayPal .csv, как внешних данных (а не просто открывать .csv в Excel), дабы в следующий раз можно было подменить старый .csv новым и просто обновить данные в Рабочей книге. Так-то понятно, что напрямую можно работать токмо с открытыми Web-источниками.

flev45 16-05-2019 17:53 2872047

Цитата:

Цитата Vadikan
Я вам про выбор решения и гибкие инструменты, »

Вы совершенно правы, если...у меня там по-видимому заблокирована закачка файлов. Пишут до 12 файлов. Я до этого закачал кучу PDF... подсчитал, ровно 12 уже скачал. Не знаю, наверное лимит 12 шт. в месяц. Ну не могу я сейчас вернуться на месяц назад.

Iska 16-05-2019 18:08 2872050

flev45, пробуйте:
Код:

Option Explicit

Sub Sample()
    Dim objParagraph As Paragraph
   
    For Each objParagraph In ActiveDocument.Content.Paragraphs
        If InStr(1, objParagraph.Range.Text, "Laden der Transaktionsdetails", vbTextCompare) > 0 Then
            objParagraph.Range.Delete
      ElseIf objParagraph.Range.ListFormat.ListType = wdListOutlineNumbering Then
            objParagraph.Range.Delete

        End If
    Next objParagraph
End Sub


flev45 16-05-2019 19:07 2872057

Уважаемый, огромное Вам спасибо за два очень важных макроса:)
У Вас личка переполнена, поэтому сюда: AutoCAD примерно 40 лет тому уже был. Я самолично инсталировал его на одну из первых ПК Apple (в виде большой тумбы с дисплеем), входящую в комплект поставки к управляющей ЭВМ... для конструкторов моего Института Робототехники. Представляете, уже тогда это всё было, включая первые, штучные, яблочные ПК:)
ПС: главное - Ваши макросы могут быть применены с любой "текстовкой", подставляй свою и пользуйся на здоровье:)

Iska 16-05-2019 20:07 2872061

Цитата:

Цитата flev45
AutoCAD примерно 40 лет тому уже был. »

flev45, «примерно» — это уже честнее.

Цитата:

Цитата flev45
Представляете, уже тогда это всё было, »

Ну, как бы мне незачем представлять, мне доводилось их «щупать» в своё время.

Цитата:

Цитата flev45
включая первые, штучные, яблочные ПК »

Это никак не могли быть «первые», в лучшем случае это могли быть какие-нибудь поздние модели Apple II.

flev45 16-05-2019 20:42 2872067

...первые, в виде терминала, соединённые по "шине" с УЭВМ... которые я программировал на техно.объёктах.


Время: 19:37.

Время: 19:37.
© OSzone.net 2001-