そもそも、なぜExcelは左上以外のセルに入力された文字列を容赦なく破棄してしまうのでしょうか。この疑問を紐解くには、Excelが持つ「スプレッドシート(表計算)エンジン」としての基本設計思想を理解する必要があります。
Excelの内部アーキテクチャにおいて、すべてのセルは「行番号」と「列記号」の一意な座標(例:A1、B2)によって管理され、1つのセル座標に対して1つのデータ値または数式が割り当てられる設計になっています。セルを結合した際、Excelは視覚的に複数マスを1つに統合したように見せかけていますが、システム内部では「左上端の座標」のみをアクティブなセルとして認識し、その他の領域を単なる表示上のマスクとして扱っています。
仮にA1セルに「東京都」、B1セルに「千代田区」が入っている状態で結合を試みた場合、結合後のセル番地は「A1」に固定されます。このとき、システム側が自動で「東京都千代田区」と文字列を連結してA1に代入する仕様にしてしまうと、元の純粋なデータ型が意図せず改変され、データベースとしての整合性が損なわれます。そのため、マイクロソフトは初期設計の段階から「左上の値のみを保持し、競合する他セルの値はユーザー承諾のもとで破棄する」という厳格な仕様を採用し続けているのです。
設定オプションを探しても「セル結合時に値をすべて保持する」というチェックボックスが存在しないのは、機能不足ではなく、表計算ソフトとしてのデータ破壊を防ぐための防壁に他なりません。だからこそ、文字列を維持するためにはユーザー側からのアプローチが必要になります。