Обработка части текста из ячейки ворда - VBA

Узнай цену своей работы

Формулировка задачи:

Пытаюсь скопировать часть текста из ячейки ворда. все содержимое копируется. не получается скопировать часть текста. "1. Руководитель Департамента АА - Иванов 2. Руководитель Управления ВВ - Петров". Нужно в ячейку поставить "Департамента АА", в лучшем случае на следующую строку еще "Управления ВВ".
Листинг программы
  1. rt = wdTbl.Cell(3, 2).Range '.Text
  2. If Left(rt, 2) = "1." Then
  3. 'If Left(wdTbl.Cell(3, 2).Range.Text, 2) = "1." Then
  4. Sheets(3).Cells(l, 4).Value = Replace(Replace(wdTbl.Cell(3, 2).Range.Text, Chr(7), ""), Chr(13), "")
  5. Sheets(3).Cells(l, 5).Value = Replace(Replace(wdTbl.Cell(4, 2).Range.Text, Chr(7), ""), Chr(13), "")
  6. Else
  7. With rt.Find 'выборка
  8. .ClearFormatting
  9. .Text = " - "
  10. .Forward = True
  11. ' .Wrap = wdFindStop
  12. .Format = False
  13. .MatchCase = False
  14. .MatchWholeWord = False
  15. .MatchAllWordForms = False
  16. .MatchSoundsLike = False
  17. .MatchWildcards = True
  18. If .Execute Then
  19. Sheets(3).Cells(l, 4).Value = odoc.Range(rt.Start, rt.End - 3)
  20. End If
  21. End With
дает ошибку в строке "With rt.Find '"
в данном фрагменте для проверки делаю выборку по строке "Руководитель Департамента СС - Сидоров"
как я понимаю не правильно задается диапазон обработки потому что "Sheets(3).Cells(l, 4).Value = Replace(Replace(rt.Text, Chr(7), ""), Chr(13), "")" не работает. как правильно задать .Range для текста в ячейке?

Решение задачи: «Обработка части текста из ячейки ворда»

textual
Листинг программы
  1.  rt = wdTbl.Cell(3, 2).Range.Text
  2. n = InStr(1, rt, "2.") '  начальная позиция "2."
  3. k = InStr(n, rt, " - ") ' позиция первого " - " после "2."
  4. s = Mid(rt, n + 3, k - n + 2) ' часть текста от "2." до " - "

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы