SQL Server Management Studio - 改行入りのデータを Excel にエクスポートする

SQL Server Management Studio で Excel にエクスポートする

テーブルに入ってるデータや、クエリーを書いて取得したデータなどを Excel にエクスポートしたい時ありますよね。

簡単な方法は、クエリエディターの結果グリッドで、レコードを選択して、右クリックでコピーヘッダー付きでコピーして Excel ファイルに貼り付けることだと思います。

改行入りのデータを Excel にエクスポートする 1

改行入りのデータを Excel にエクスポートする 2


ただ、この方法だと、値に改行が入っていた時に、SQL Server Management Studio (SSMS) のバージョンや設定によっては、それ以降のカラムと値がずれてしまうことがあります。

例えば、StudentID = 2 の Memo カラムに次のような値を保存します。

1行目
2行目
3行目

そして、SSMS 2014 の結果グリッドからコピーしてエクセルに貼り付けるとこんな感じになります。

改行入りのデータを Excel にエクスポートする 3

改行入りのデータを Excel にエクスポートする 4


SSMS 2016 以降では、結果グリッドからコピーまたは保存時に CR/LF を保持するかどうかが選択できるようになり、デフォルトでは保持しない設定になっている為、改行がスペースに置き換えられ、一行になって貼り付けされます。

改行入りのデータを Excel にエクスポートする 5


もし、SSMS 2016 より前のように、コピーまたは保存時に CR/LF を保持したい場合には、[ツール] > [オプション] > [クエリ結果] > [SQL Server] > [結果をグリッドに表示] で、[コピーまたは保存時に CR/LF を保持] のオプションをオンにしてください。

改行入りのデータを Excel にエクスポートする 6

改行入りのデータを Excel にエクスポートする 7

改行入りのデータを Excel にエクスポートする

改行が保持された状態で、データを Excel にエクスポートしたい時は、SQL Server Management Studio の データのエクスポート 機能を使ってエクスポートすることができます。

オブジェクトエクスプローラから、データベースで右クリックし、[タスク] > [データのエクスポート] を選択します。

改行入りのデータを Excel にエクスポートする 8


ウィザードが始まりますので [次へ] をクリックします。

改行入りのデータを Excel にエクスポートする 9


[データ ソースの選択] 画面で、今回は SQL Server Native Client 11.0 を選択します。

改行入りのデータを Excel にエクスポートする 10


サーバー名、ログイン情報、データベースを入力し、[次へ] をクリックします。

改行入りのデータを Excel にエクスポートする 11


[変換先の選択] 画面で、Microsoft Excel を選択します。

改行入りのデータを Excel にエクスポートする 12


エクスポート先のパスとファイル名、Excel のバージョンを指定し、[次へ] をクリックします。

改行入りのデータを Excel にエクスポートする 13


先ほどのクエリーをそのまま出力したいので、[転送するデータを指定するためのクエリを記述する]を選択し、[次へ] をクリックします。

改行入りのデータを Excel にエクスポートする 14


[基になるクエリの指定] 画面が出てくるので、先ほどのクエリーをペーストし、[次へ] をクリックします。

改行入りのデータを Excel にエクスポートする 15


テーブルの選択やマッピングの画面が出てきますが、今回は何も変更せずに[次へ] をどんどんクリックし、[完了]までクリックします。

改行入りのデータを Excel にエクスポートする 16

改行入りのデータを Excel にエクスポートする 17

改行入りのデータを Excel にエクスポートする 18

改行入りのデータを Excel にエクスポートする 19

改行入りのデータを Excel にエクスポートする 20

データの変換でエラーになってエクスポートできない場合は「SQL Server Management Studio - 改行入りのデータを CSV ファイルにエクスポートする」をお試しください。


エクスポートされた Student.xlsx ファイルを確認してみると、改行が保持されていますね!

改行入りのデータを Excel にエクスポートする 21

© 2010-2024 SQL Server 入門