Вопрос по переносу таблицы из Word в Excel.

ivan84

Здравствуйте,
Подскажите пожалуйста, возможно ли и если возможно, то как перевести таблицу из Word-а в Excel, так чтобы содержимое каждой ячейки таблицы в Word-е было перенесено в отдельную ячейку таблицы в Excel-e. У меня получается, что левый столбец перенесен так как надо, а в правом ячейки разбиваются на несколько.
Вот таблица в Word-e:

При переносе в Excel:

Заранее, большое спасибо!

Trofimovyoa

В Word сделай замену знака перевода каретки на "ЫыЫ" (или какое-нибудь уникальное сочетание символов скопируй в Excel, а там замени "ЫыЫ" на десятый символ (chr(10.

ivan84

Что то у меня не получается, если пишу заменить на chr(10) он так и меняет на эту фразу )
Напишите поподробнее пожалуйста.

Trofimovyoa

запиши макрос замены "ЫыЫ" на "chr(10)", а потом подредактируй макрос, убрав кавычки около "chr(10)" (нужно заменить "ЫыЫ" на 10-й символ, а не на строку "chr(10)")
макрос для требуемой замены в итоге должен получиться примерно такой

Cells.Replace What:="ЫыЫ", Replacement:=chr(10 LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

ivan84

Эх, если бы я понимал что все это значит
Ладно буду разбираться
Спасибо за совет.
PS Если есть более простое решение пишите

stm4836248

Макросы добавляются по Alt+F11, остальное тебе уже написали.

ivan84

Я делаю следующее:
В Excel нажимаю Alt+F11.
В появившемся окне я открываю Лист1(красный квадрат на рисунке) в котором собственно содержится таблица с текстом для исправления. Туда вставляю строку "Cells.Replace What:="QWE", Replacement:=Chr(10 LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False". Затем во вкладке General (фиолетовый квадрат на рисунке) я выбираю единственно доступный вариант Worksheet, после чего появляется ошибка видимо на то что выделено зеленым квадратом на рисунке.
Подскажите в чем тут проблема и вообще я делаю не так, поскольку я в этом ничего не понимаю )

SergZ495

Куда как проще по-моему то что в правом столбце послеплять рекурсивно в последней ячейке для каждой объединенной ячейки слева, при помощи функции "сцепить" (или & еще) и нехитрой комбинации "если".
Потом лишние строчки поудалять сортировкой и фильтром.

Mixaz

 
Подскажите в чем тут проблема и вообще я делаю не так, поскольку я в этом ничего не понимаю )
 

добавь в первой строке:
Sub EPRST
и в конце:
End Sub
потом запускай

ivan84

После добавления этих частей:
Sub EPRST Cells.Replace What:="QWE", Replacement:=Chr(10 LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False End Sub
Выдает ту же ошибку, но теперь жалуется не на "QWE", а на Cells.
Что теперь поменять?
По поводу соединения с помощью &:
я пробовал так делать, но синтаксис таков, что если я хочу соединить содержимое ячейки A1, в которой записано qwe, с содержимым ячейки A2, в которой записано rty, то надо написать следующее: =A1&"Х"&A2, где Х - это то что будет между соединяемыми словами qwe и rty. Но как вместо Х вписать перенос на след строку я не знаю (

ivan84

Всем большое спасибо, я разобрался )
Тело макроса, следующее:
Sub EPRST
ActiveCell.Select
Cells.Replace What:="9", Replacement:=Chr(13) + Chr(10 LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End Sub

Andbar

На тот случай, если переводов строки немного, в Excel'е перевод строки внутри ячейки вводится через Alt+Enter. (хотя невозможность ввести любой символ в строках поиска/замены, как это можно в ворде - гадость)
Оставить комментарий
Имя или ник:
Комментарий: