![[小ネタ] Google スプレッドシートでカンマ区切りCSVをきれいに展開する方法](https://images.ctfassets.net/ct0aopd36mqt/6IiHR81tlfYpizFO7r4aFz/61fd9bd78a3dbe99c245f6c4adcaba27/googleworkspace_workspace_gws.png?w=3840&fm=webp)
[小ネタ] Google スプレッドシートでカンマ区切りCSVをきれいに展開する方法
どうも!オペ部の西村祐二です!
カンマ区切りのCSVを共有してもらうことがあります。Google スプレッドシートに貼り付けると全部が1列に詰まってしまうことがあります。データ メニューの「テキストを列に分割」で、きれいに変換できたのでまとめておきます。
今回やること
データ メニューの「テキストを列に分割」で、カンマ区切りのCSVを列に展開する手順を紹介します。
この記事で分かること:
- 1列に詰まって貼り付いたCSVを、
データメニューから列分割できる - 区切り文字は自動検出されるが、カンマを明示的に選ぶこともできる
- AWSアカウントIDのような「数字だけの文字列」は、先頭に
'を付けると数値化を防げる
前提条件
動作環境
- ブラウザ版 Google スプレッドシート
- カンマ区切りのプレーンテキストCSV(Slack のメッセージやシステムからそのままコピーしたもの)
操作手順
今回は、AWSアカウントの一覧を想定した次のサンプルCSVを使います。
アカウント名,AWSアカウントID,リージョン
dev,123456789012,ap-northeast-1
stg,234567890123,ap-northeast-1
prod,345678901234,ap-northeast-1
- Google スプレッドシートで貼り付け先のセルを選び、貼り付け(Cmd+V / Ctrl+V)します。この時点では全部が1列に詰まった状態で入ります
- 1列に詰まっているセル範囲を選択します
- 上部メニューの
データをクリックします テキストを列に分割を選びます
分割されると、次のように3列に展開されます。

| アカウント名 | AWSアカウントID | リージョン |
|---|---|---|
| dev | 123456789012 | ap-northeast-1 |
| stg | 234567890123 | ap-northeast-1 |
| prod | 345678901234 | ap-northeast-1 |
AWSアカウントIDは先頭に ' を付けて文字列にする
「テキストを列に分割」で分割された値のうち、数字だけのものは数値として解釈されます。AWSアカウントIDのような「数字だけだが文字列として扱いたい」値がある場合、012345678901 のように先頭が 0 のIDだと 12345678901 に変わってしまい、桁が欠けた状態になります。
こうした値は、貼り付ける前の元データ側で、先頭にシングルクオート(')を付けておくと文字列として扱えます。スプレッドシートは先頭の ' を「この値を文字列として解釈する」という合図として扱うため、' 自体はセルに表示されません。
アカウント名,AWSアカウントID,リージョン
dev,'012345678901,ap-northeast-1
prod,'987654321098,ap-northeast-1
この状態で貼り付けて列分割すると、AWSアカウントIDの列は先頭ゼロを保った文字列になります。
まとめ
カンマ区切りCSVをスプレッドシートに貼り付けたい場面がありました。データ → テキストを列に分割 を覚えてからは、Slackから受け取ったCSVをスプレッドシートでサッと整形できるようになりました。AWSアカウントIDのような数字だけの列は、元データ側で先頭に ' を付けておくと先頭ゼロ落ちを防げます。
誰かの参考になれば幸いです。
参考リンク:




