Як скопіювати багаторядковий текст з Excel без лапок?


71

Коли ви створюєте багаторядковий рядок у комірці excel (використовуючи Alt-Enter), якщо ви копіюєте цю клітинку в текстовий редактор, excel автоматично додає подвійні лапки (") навколо повної рядки, тобто:

Cell1  |   Simple String 1 
Cell2  |   First line of a 
       |   Multiline string
       |   with 3 lines 
Cell3  |   Another simple line 2

Коли ви копіюєте просто текстовий стовпець зі значеннями в текстовий редактор, ми отримуємо:

Simple String 1
"First line of a 
Multiline string
with 3 lines"
Another simple line 2

Як я можу сказати excel не додавати цитату навколо багаторядкового тексту при копіюванні з excel?


Редагувати: редактори тексту, які я намагався відображати таку поведінку:

  • MS Word
  • Wordpad
  • Блокнот
  • Блокнот ++
  • Студія SQL Server

Якщо у вас є пропозиція щодо використання певного редактора (або одного з перерахованих вище), будь ласка, скажіть, який із них і як ним користуватися ...


4
Що це варто, це тому, що Excel намагається вивести дійсний CSV . Я був би здивований, якби це було легко змінити.
slhck

@slhck Я сподіваюся, що ви помиляєтесь (приємна відповідь на це, хоча!), оскільки було б дуже корисно мати можливість сказати excel, що я не копіюю в csv ...
Ендрю Бікертон,

3
Це дуже дратує. Немає законних причин, чому Excel ставить цитати навколо тексту, що містить повернення перевезення.
коливальнийкретин

1
Електронні таблиці Google роблять те саме, що дратує. Я намагаюся скопіювати декілька комірок даних у текстовий файл, але Google Spreadsheets додає цитати до даних - цитати НЕ є у вихідних даних. Це помилка для мене, а не особливість.
Джоні

Є відповідь, що використовує VBA, розміщену тут: stackoverflow.com/a/24913557/976210 Це спрацювало набагато краще для мене, оскільки я не хочу використовувати посередницьку програму.
Кіт Джонсон

Відповіді:


20

Те, як ваш текст буде скопійований у Word, залежить від обраного параметра форматування. У Word 2010 опцією формату за замовчуванням є HTML Format. Існує чотири основні варіанти того, як скопіювати текст у Word. ( Formatted Text (RTF), Unformatted Text, HTML Format, & Unformatted Unicode Text)

Вставка з відформатованим текстом створює міні-таблиці в Word. (Синій контур.)

Вставити спеціальні параметри

Щоб отримати неформатований текст у Word без подвійних лапок:

  1. Вставте текст у форматованому форматі, щоб він створив таблицю.
  2. Виберіть таблицю і скопіюйте її.
  3. Перемістіть на порожнє місце і вставте нову копію у вигляді неформатованого тексту. ( Alt + E, S)

Це також працює для вставки результатів без лапок в інший редактор. Просто змініть крок 3, щоб вставити його в інший редактор.

Однак, можливо, буде швидше просто вставити як звичайне, а потім скористатися Замінити, щоб знайти та видалити всі подвійні лапки.


+1 приємна відповідь з технікою її вирішення! (на жаль, для блоку, з яким я мав справу, були дійсні подвійні цитати, які я хотів зберегти)
Ендрю Бікертон,

+1 ці дурні речі насправді змушують мене шукати інший офісний продукт. Можливо, зірковий офіс чи щось таке. дякую за трюк
велосипед

22

Якщо ви скопіюєте діапазон від Excel (2010) до Word, ви отримаєте текст так, як вам потрібно, цитати безкоштовно. Потім ви можете скопіювати його ще раз до остаточного пункту призначення, наприклад блокнота. Excel-> Word-> Блокнот дасть вам потрібні результати.


Word відображає таку поведінку під час копіювання з іншими клітинками (як описано в запитанні). Або це щось, що вони сортували в Office 2010?
Ендрю Бікертон

2
Поки що це працює. Дуже погано, що я маю використовувати Word 2010 як середню людину для видалення лапок.
коливальнийкретин

Це працює і для Mac Office 2011.
Lewis42

3

Найпростіший спосіб, який я знайшов, - це об'єднати клітини, які ви хочете бути на декількох лініях, з чимось "особливим" між ними, а не cr / lf. Тильда зазвичай добре працює на мене. Наприклад, у стовпці G:

=E1&"~"&F1
=E2&"~"&F2
...

У цьому прикладі кінцевою метою є отримання текстового файлу зі значеннями від E1 в одному рядку, а потім F1 в новому рядку, а потім E2, F2 тощо. Звичайно, ви могли б так само легко створити G1 з інших значення, щойно включені ~ для розривів рядка.

Потім отримати багаторядковий текстовий файл у Блокноті ++

  • Виріжте і вставте в Блокнот ++
  • Ctrl-H, щоб відкрити діалогове вікно заміни
  • Переконайтесь, що вибрано "розширений" варіант пошуку
  • Замініть всі ~ на \ n (або \ r \ n, якщо вам зручніше)

Як розробнику мені подобається цей, оскільки він не вимагає такого третього інструменту, як Word.
VSB

2

Це не проблема Excel. Як і в попередньому плакаті, це просто виведення дійсних даних CSV. Редактор буде вирішувати, чи будете ви шукати його форматування. Я б запропонував використовувати щось трохи розумніше, ніж блокнот ... Ви можете використовувати MS Word як перехід від Excel до будь-якого текстового редактора, який ви хотіли використати крім слова.


2
Я використовую щось інше, ніж блокнот ... Також Word робить саме те ж саме (вставляючи саме цю клітинку в "")
Ендрю Бікертон

Word 2010 із налаштуваннями за замовчуванням прекрасно працює як перехід.
Адам Річковський

Я це відкрив учора. Я згоден з Ендрю Бікертоном. Я не хочу копіювати CSV, я хочу скопіювати текст. Excel повинен хоча б запитати. Оскільки мій текст складав близько двох тисяч вставок SQL, мені вдалося його легше вирішити за допомогою PsPad. Незважаючи на те, що це було просто, це було зовсім непотрібно.
альварок

1

У мене була та сама проблема, і я застосував наступні кроки (я використовую Office 2007, але, думаю, він працює і для більш пізніх версій):

  1. Виберіть діапазон комірок, що містять багаторядковий текст з Excel, який я хочу вставити в інший редактор, а потім виберіть Копіювати.
  2. У Word 2007 я вставив скопійований діапазон комірок як таблицю.
  3. Виберіть таблицю.
  4. На вкладці «Макет» виберіть «Вибрати таблицю».
  5. У розділі даних виберіть Перетворити в текст та оберіть позначки абзацу.

Результатом є оригінальна таблиця, перетворена в текст, з символами нового рядка в кінці кожного рядка та позначками абзацу в кінці останнього рядка від кожної комірки.


1

Ви можете зберегти документ Excel як веб-сторінку, а потім скопіювати текст з веб-сторінки. Це добре працює для одного стовпця даних, але переконайтеся, що ви встановили ширину стовпця на ширину тексту, інакше це додасть перерви рядків.


1

У мене сьогодні була ця проблема, тому я подумав, що опублікую відповідь у випадку, якщо хтось все ще застряг у ній.

Ви можете обійти це, виділивши комірку, а потім скопіюйте та вставивши код прямо з текстової панелі вгорі, натиснувши на неї та виділивши все це вручну.

Я робив це лише в Excel 2010, тому не знаю, чи це буде працювати для попередніх версій.


Це ідеально, хоча мені довелося взяти свою клітинку з формулою CONCAT (A1: A100) у ній та вставити Special у другу клітинку, перш ніж я зміг вибрати все з текстового поля, як ви описали
nvuono

1

Не можна підготувати його до CSV-файлу, тому що вони будуть досить дурними, бути настільки витонченими, що для верхньої та хвостової комірок, які містять символи, що не друкуються з лапками, і не робити те ж саме для комірок, що містять коми (що це не робить 'т).

У всякому разі. Я зіткнувся з цією проблемою, коли намагався створити мітки адреси з полів Ім'я, Прізвище, Рядок 1 адреси як:

=A1&" "&B1&CHAR(13)&CHAR(10)&C1&CHAR(13)&CHAR(10)&D1

CHAR(13)з подальшим CHAR(10)новим абзацом під час перегляду текстового файлу з шестигранним редактором.

Мій шлях цього роздратування полягає в тому, щоб:

  • скопіюйте і вставте комірки / стовпчик у Word.
  • Скористайтеся спадним символом буфера обміну (внизу зліва або вставленого тексту), щоб вибрати, Зберігати лише текст .
  • Виберіть вставлений текст. Це потрібно робити лише в тому випадку, якщо документ містить інші речі, на які це може вплинути
  • Натисніть Ctrl+, Hщоб відкрити діалогове вікно " Знайти та замінити ".
  • У полі " Знайти що" введіть: "^p"(усі чотири символи).
    Можливо, вам доведеться перейти до Інструменти -> Параметри автовиправлення, а потім обидві вкладки Автоформат, щоб переконатися, що вони не змінюють ваші прямі лапки)
  • У полі Замінити на поле введіть: ^p(2 символи)
  • Тепер натисніть, Replace All , кнопка
  • Нарешті, вам доведеться вручну видалити подвійні лапки на початку та в кінці імпортованого блоку

Це засновано на Office 2003, тому ваша версія Microsoft Word може дещо відрізнятися.


0

Я використав цю CLEARфункцію, і вона працювала на мене.

Помістіть комірки, які потрібно скопіювати, всередині CLEAR, наприклад:

=clear(A1)

Де A1знаходиться клітинка з даними, які ви хочете скопіювати в блокнот без лапок.


15
Я думаю, ти маєш на увазі CLEAN. (Принаймні, в Excel 2010.) Однак це видалило б символи подачі рядка, і його друге речення більше не буде багаторядковим.
mischab1

0

Я знаю, що це стара тема, але моїм рішенням було використовувати CLEAN, як було запропоновано, скопіюйте ці клітинки та вставте значення назад в аркуш. Таким чином я міг би відредагувати текст до кінцевого результату та скопіювати та вставити клітинки в текстовий документ без лапок.

Я думаю, що очищення тексту спочатку, а потім остаточне форматування, швидше за все, спрацює (принаймні, це зробило для мене).


2
Варто зазначити одне, я вважаю, що метод "Очистити" також видалить символи повернення каретки, і отримане минуле не буде багаторядковим.

0

Була така ж проблема, нарешті її вирішити дуже легко. У мене було 600 рядків довгих описів продуктів. Щоб виправити цю проблему, я зробив наступне:

1) Виберіть весь стовпець і натисніть «Обернути текст».

2) Утримуючи вибраний стовпець, натисніть «Обернути текст» ПРОТИ (щоб текст був на 100% НЕ завернутий).

PRESTO - текст скопійований із кожної комірки ідеально, без лапок (хоча вони були довгими абзацами).

За замовчуванням Excel додає лапки до будь-якого багаторядкового тексту. Отже, найпростішим рішенням, передбаченим вищезазначеним процесом, є те, щоб ваші клітини з довгим текстом автоматично не загорталися на кілька рядків.

Можливо, варто зазначити, що перед тим, як я це зробив, клітини виглядали нормально і НЕ здавались обгортати. Я думаю, що вищезгаданий процес 'говорить' Excel НЕ трактувати будь-яку клітинку як "багаторядковий 'текст, навіть якщо це довгий абзац, таким чином вирішуючи питання" Excel додаючи цитати до скопійованого тексту ".


2
Привіт, не зовсім правильне рішення. Це працює лише в тому випадку, якщо у вас немає внутрішніх повернень перевезення у ваших клітинках (натисніть alt-enter, щоб створити внутрішнє повернення каретки)
Ендрю Бікертон

0

Я знайшов для цього легку роботу. Встановіть OpenOffice Calc та відкрийте файл .xlsx. Потім просто скопіюйте вміст комірок і вставте в будь-який текстовий редактор. Дратівливі провідні та кінцеві цитати не з’являться.


0

Я знаю, що це 2018 рік, і ці посади старіші, але все-таки актуальні. Вони допомогли мені знайти рішення.

  1. Я ставлю = A2, який дивиться на клітинку з Char у формулі.
  2. Потім я скопіював A2 і вставив як значення в іншу клітинку, наприклад, A3.
  3. Я тоді обраний A3, пресований F2, CtrlShiftHome, CtrlC.
  4. Зупиніться прямо, не вставте в іншу комірку Excel. залиште його в буфері обміну і вставте в блокнот.
  5. Невидимі цитати зникають.

Зникайте, як сказав INXS: Зникайте! : =)

Можливо, хтось ще сказав це рішення, тому мої вибачення, прочитавши всі приклади, щось занурилося в мої думки, і ви всі допомогли!


-1

Як і ви, я мав свої дані у стовпці. Отже, щоб скопіювати значення без цих лапок, я з'єднаю весь стовпець із даними. Це для електронних таблиць Документів Google, але я думаю, що це може працювати для Excel, можливо, доведеться змінити функцію CONCATENATE.

Щоб об'єднати весь стовпець G:

=CONCATENATE(G:G)

Додано цитати лише перші та останні, і це досить легко відредагувати вручну пізніше.


не працює для excel
Baljeetsingh

-1

працюючи над відповіддю від solvus, ми можемо створити веб-сторінку з автоматичною публікацією, просто з потрібним діапазоном тексту - без лапок. Ви можете скопіювати та вставити це в інші місця. Після того, як ви його налаштували, його там назавжди і оновлять, не псуючи основний файл.

зробити це,...

Виберіть свої клітинки, а потім save as.. save as file type= Single File Web Page. з опцією Republish $ : $(вибраний діапазон.)

натисніть опублікувати. виберіть AutoRepublish every time this workbook is saved.

  • Ви отримаєте опубліковану веб-сторінку, яка містить лише ваші діапазони даних у форматі таблиці без лапок. копіювати і вставляти :)
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.