Yueseryueser.com

← ガイド一覧

タブを削除:Excel からコピーした1列が2列に分かれる理由

Excel から1列だけコピーすると、値の末尾にタブが残ることがあります。1行の入力欄に貼るとタブが列区切りと解釈され、値が2つに分かれたり送信に失敗したりします。削除すれば文字がつながり、検索欄やタグ欄に向いた形になります。

ツールを開く:タブを削除

タブを削除するのが正解の場面

Excel で1列のセルをコピーすると、各値の末尾にタブが付くことがよくあります。1行しか受け付けない入力欄に貼ると、タブが列の区切りとして扱われ、値が2つに分かれたり送信時にエラーになったりします。スペースに置き換えるより削除するほうが確実で、値の中に空白が残る心配もありません。

古いシステムから書き出した固定幅のテキストも同じです。項目がタブで区切られていても、必要なのは連続した1つの文字列であったり、複数を1つのタグにまとめたい場合があります。区切りを消すほうが目的に合います。

副作用を出さない使い方

削除するのはタブ(U+0009)だけです。半角スペース、全角スペース、その他の空白は残るため、インデント用のスペースは消えません。ただしタブだけで区切られていた2つの語はくっつき、「氏名」+タブ+「山田」が「氏名山田」になります。

間隔を残したい場合は、スペースをいくつ入れたいかを決めてタブをスペースに変換するツールを使ってください。削除は、もともとあるスペースを残したまま区切りだけを消したいときに使います。変換してから空白を整える、削除してから手で足す、といった組み合わせも可能です。

使えない場面と代替手段

区切りとしてのタブとインデントとしてのタブを区別せず、どちらも削除します。タブでインデントされたソースファイルに使うと構造が壊れるため、コードにはエディタのインデント変換機能を使ってください。

行頭や行末のタブだけを消す、連続するタブを1つにまとめる、といった制御もできません。これらはエディタの正規表現が必要で、連続するタブを1つのスペースに置換する、行頭のタブだけに一致させる、といった指定になります。

よくある質問

2つの文字列がくっついてしまうのはなぜですか?

タブを削除すると区切りがなくなるため、「氏名」+タブ+「山田」が「氏名山田」になります。間隔を残したい場合は、タブをスペースに変換するツールを使ってください。

スペースや他の見えない文字も削除されますか?

削除されません。対象はタブ(U+0009)だけで、半角スペースや全角スペース、その他の空白はそのまま残ります。インデント用のスペースも消えません。

行頭のタブだけを削除できますか?

できません。タブがあれば位置を問わず削除します。行頭のインデントだけを消すには、エディタで行頭のタブに一致する正規表現置換を使うか、行頭・行末の空白を削除するツールを使ってください。

関連ツール:タブを削除