Результаты, скопированные из SSMS, разбиваются по столбцам при вставке в Excel

SSMS 2008 -> Excel 2003

Это происходит не всегда, но иногда, когда я "копирую с заголовками" из sql server management studio, результаты в Excel выглядят так, как будто я использовал мастер "текст в столбцы" с "пробелами" и "скобками" в качестве разделителей, что означает, что результаты становятся неравномерно распределенными по столбцам, что делает их бесполезными

Я посмотрел в параметрах запроса 'grid output', но не вижу ничего, что может вызывать проблему

(не уверен, что это должно быть на суперпользователе?)

5 ответов

Решение

Сохраняются настройки "текст в столбцы" из предыдущих

Временное решение:
Найти пустую клетку
положить asdf
в этой камере

Данные | Текст в столбцы
разделенный
снимите все флажки
заканчивать

Эта проблема может быть вызвана функцией Excel "Текст в столбец". Он разбивает один столбец на несколько столбцов в зависимости от того, какой разделитель вы выберете. Когда вы используете эту функцию, Excel почему-то считает, что она все еще включена и может повлиять на вашу следующую копию и предыдущую операцию.

Чтобы исправить, перейдите в столбец "Данные"> "Текст в" и выберите другой разделитель (кроме пробела), например запятую или вкладку. Затем скопируйте и вставьте. Это должно решить проблему.

Связанный странный вопросительный знак в Excel после копирования и в прошлом

Я разрабатываю надстройку SSMSBooad для SSMS (https://www.ssmsboost.com/), и мы обратились к этой теме там: вы можете использовать функцию "Копировать данные как XML Spreadsheed (Excel)", которая использует собственный формат буфера обмена Excel для передачи заголовков и информации о типе данных. чтобы преуспеть. Надеюсь это поможет.

Обновление: недавно мы создали учебное видео по этой теме:

https://www.youtube.com/watch?v=waDCukeXeLU

Это распространенная ошибка в таком процессе - скопируйте из SSMS и вставьте в Excel. Эта проблема возникает, когда один из столбцов в результате SSMS имеет точку (.) И обрабатывает его как отдельную строку, а результатом может быть грязный столбец / строка в Excel. Например: "Heineken Bottled Beer .33 Liter". Эта точка перед 33 может отбросить процесс вставки по той же причине, что указана выше.

Это как избежать этого без какого-либо кода.

  1. Скопируйте все столбцы, которые не имеют точки (.) В своих записях результата.
  2. Вставьте его в Excel.
  3. Выполните 1-й шаг, если после столбца, который имеет точку (.), Есть еще столбцы.
  4. Наконец, скопируйте и вставьте столбец с точкой (.) В конце *.
    • Если прямая вставка в Excel для этого столбца не работает, попробуйте вставить его на новый лист Excel, а затем скопировать туда, куда вы хотите его вставить.

Надеюсь, поможет.

В вашем коде могут быть двойные квадратные скобки, например [[My Column]]. Поиск и решение этой проблемы устранили для меня эту проблему.

Другие вопросы по тегам