2012-03-05 12:05:12 +0000 2012-03-05 12:05:12 +0000
14
14

SQL ServerからExcelにデータをコピー/ペーストすると、テキストが複数の列に分割されますか?

SQL Server 2005の結果グリッドからエクセル2007のスプレッドシートにデータを貼り付けることができません。

2つの列(数字列とテキスト列)を返すSQL Serverのクエリを持っています。

こちらのあるコンピュータでは、喜んでコピー(右クリック>コピー)して、右クリックしてエクセルのスプレッドシートに貼り付けることができます。

別のコンピュータでは、エクセルに貼り付けようとすると、テキストの列を分割して、単語と単語の間のスペースに基づいて複数の列にテキストを貼り付けてしまう。

例えば、行の一つにスペースがあるとします。

Paste me please

…がある場合、エクセルに貼り付ける際にテキストを分割し、エクセル内の別の列にそれぞれの単語を貼り付けます。

SQL Serverとexcelの両方でオプションを比較してみましたが、問題なく動作していますが、違いは見られません。

どんなアイデアでも歓迎します

ありがとうございます。

Respuestas (6)

20
20
20
2012-05-21 20:06:39 +0000

最近、列へのテキストを使用している場合は、それらの設定を貼り付け操作に適用してくれます。Excel 2007以前ではこのようなことがあったと記憶していませんが、あったかもしれません。私はいつもコピー&ペーストをやり直す前にタブ区切りに戻して設定しています。

7
7
7
2013-07-09 17:00:59 +0000

結果を貼り付ける前に データ→列へのテキスト_

  • 元のデータ型。Delimited_
  • Next
  • デリミタにチェックを入れる。スペース_
  • Next
  • Finish

最後に結果を貼り付けます。

1
1
1
2015-11-13 18:40:08 +0000

私は、Excelを終了してから再起動し、スプレッドシートを再読み込みすると、列へのテキストオプションがクリアされるので、再び期待通りに貼り付けが動作することを発見しました。

ヘクターさんの回答は、Excelを終了する必要がないという点ではいいのですが、これも同様に動作し、かなり手っ取り早いです。

0
0
0
2014-03-30 00:32:10 +0000

テーブルに nvarchar(max) フィールドが含まれている場合は、そのフィールドをテーブルの一番下に移動します。フィールドのタイプが nvarchar(max) と異なる場合は、問題のあるフィールドまたはフィールドを特定し、同じテクニックを使用します。保存します。SQLでテーブルを再選択します。変更せずに保存できない場合は、一時的に TOOLS > OPTIONS で関連する警告をオンにすることができます。この方法ではリスクはありません。ヘッダー付きのSQL GRID表示をコピーしてExcelに貼り付けます。データはまだキャリッジリターンを示すかもしれませんが、少なくともあなたのデータはすべて同じ行にあります。次に、すべての行のレコードを選択し、ID列でカスタムソートを行います。これで、すべてのレコードが無傷で連続しているはずです。

0
0
0
2016-10-26 18:15:51 +0000

私が時々遭遇する似たような状況は、ユーザーがコメント用の列でキャリッジリターン/改行文字を使用している場合、行が複数の行に分割されていることです。私はSQL 2012/2014で動作する解決策を見つけました ここで .

これは、どうやら以前のバージョンのSQL Serverでは問題ないようです。リンク先を経由したくない方は、SQL内で問題を修正する方法をご紹介します。

REPLACE(REPLACE([YourColumnHere], CHAR(10), ''), CHAR(13), '')
0
0
0
2017-11-23 12:56:16 +0000

クリックオプションを貼り付けた後のExcelの問題を解決しました。

“Use Text import wizard” -> Delimited -> Next Check “Tab”, check “Tab”, check “Treat consecutive delimeter as one” -> Next Finish