Excel(エクセル)のワークシートに入力した表をコピーして他のブックや新しいシートなどに普通に貼り付けすると、コピー先の列幅や行の高さを基準に貼り付けられ、全体のレイアウトが崩れてしまう事があります。
これを元の表の列幅・行の高さを変えずにコピー>貼り付けしたい時はどうしたら良いか?が本日のお題です。
※解説画像はMicrosoft365のExcelを使用しています
表の列幅を保持した状態でコピーする
まず、元の表の列幅をコピー先の表にも適用したいケースから見ていきましょう。
コピー元の表全体を選択したら普通に「コピー」します。下の画像は[ホーム]タブの「コピー」ボタンの位置を示していますが、もちろん右クリックメニューから「コピー」を選択しても、Ctrl+Cのショートカットキーでも大丈夫です。
貼り付け先のセルにカーソルを置いて(ここではSheet2のセルA1を貼り付け先の起点とします)、[ホーム]タブの「貼り付け」ボタンの下半分をクリックします。
貼り付けメニューから「元の列幅を保持」をクリックします。
元の表の列幅と同じ幅で貼り付けされました。
貼り付け先のセル上で右クリック⇒「形式を選択して貼り付け」の右向き山括弧をクリック⇒「元の列幅を保持」をクリックします。
もし、貼り付け時に「元の列幅を保持」をクリックするのを忘れ普通に貼り付けしてしまった時は、そのままもう1度[貼り付け]ボタンの下半分⇒貼り付けメニューから「形式を選択して貼り付け」を順にクリックします。
※貼り付け後に何か他の操作を行ってコピーモードが解除されてしまった時は、再度元の表をコピーしてから「形式を選択して貼り付け」をクリックしてください。
「形式を選択して貼り付け」ダイアログボックスで「列幅」にチェックを入れ[OK]をクリックすると、元の表の列幅だけを貼り付けすることができます。
表の行の高さを保持した状態でコピーする
次は行の高さを保持した状態で表をコピー>貼り付けする方法ですが、行の場合は貼り付け時ではなく元の表をコピーする時の操作にちょっとしたコツがあります。
行の高さごとコピーしたい場合は、表が入力されている行の「行番号」を選択します。
こちらの例を使用し、Sheet1にある表を、列幅・行の高さごとSheet2にコピーしてみます。
見出しの入力された1行目から表の終端の6行目まで、行番号の上でドラッグして行全体を選択し、普通にコピーします。
Sheet2のセルA1にカーソルを置いて、[ホーム]タブの「貼り付け」ボタンの下半分をクリックし、先ほどの貼り付けメニューから「元の列幅を保持」をクリック⇒貼り付けメニューから「元の列幅を保持」をクリックします。これで列幅だけでなく行の高さも保持された状態で貼り付けされます。
もうひとつ変則的な事をやってみましょう。
データは新たに入力するけれど、既存の表と同じ表見出し・列幅・行の高さのフォーマットだけ作りたいという場面を想定してみます。
まず、表見出しの1行目を行ごと選択してコピーします。
Sheet2のA1にカーソルを置き、貼り付けメニューから「元の列幅を保持」をクリックします。見出し部分が行の高さ・列の幅を保持した状態で貼り付けされます。
次に、Sheet1の表の2行目~6行目の行番号の上をドラッグして選択し、コピーします。
Sheet2のA2にカーソルを置き、貼り付けメニューから「その他の貼り付けオプション」の「書式設定」をクリックします。
これで2行目以下は表の書式だけが貼り付けされます。列幅については、最初に見出しの行を列幅ごと貼り付けしていますので、2行目以下は列幅のことは気にせず貼り付けて大丈夫です。
表を貼り付けたあとで列幅や行幅を整えるのって意外と手間なんですよね。コピーしようという場面になったら、ぜひ今回の小技をちょっと思い出して活用してみてください。