Introduction
Ver. all 2013 2016 2019 365
エクセルで作成した座席表を反転する方法です。自分から見た図と相手から見た図では逆の見た目が必要になりますね。
座席表を作ったのはいいけど、完成した後に「逆の方が分かり易かった!」と気づくことがあります。新たに作り直すと時間がかかってしまうので元の表を利用して何とかしたいところ。
場面に応じて、複数のやり方が存在しますが、ここでは3つの方法を説明します。
- 座席表全体を画像に変換して回転する
- 並べ替えを利用する
- 関数を利用する
最初の方法は手順は少ないのですが、文字もひっくり返ってしまいます。2つ目と3つ目の方法では、文字方向はそのままの状態で反転できます。
どの方法を選ぶかですが、
- 文字がひっくり返っても良い方は、簡単な1番の方法
- 関数の扱いが得意な方は、3番の方法
- 文字がひっくり返るのは嫌で、関数はちょっと苦手な人は2番
こんな感じで選んでください。
※関数を使用する方法では、「絶対参照」や「複合参照」を使用するので、Excel初心者の方には仕組みを理解するのが難しいと思います。
また、事前に作成してある座席表のレイアウトによっても、どの方法が適しているかは変わります。
その時に合った方法を選んで欲しいにゃ
座席表全体を画像に変換する
まず、1番簡単な方法です。
作成した座席表を図形に変換してしまうことで、あっさり回転できます。
問題は、文字まで回転してしまうこと・・・。下のようになります。
それでも良いのであれば、この方法が1番おすすめです。
さすがに「教卓」ぐらいは文字を通常方向にしたいですね・・・。
テキストボックスを上に重ねて対処しましょう。
では、下の表を回転してみます。
まず枠線の表示を消してしまいましょう。
[表示タブ] → [目盛線]のチェックを外します。
これで枠線が消えて、座席表を画像にしても枠線が表示されず邪魔になりません。
座席表全体を選択して、
コピー。
貼り付け先をクリックして選択します。
※後で印刷する事を考えると、別のワークシートに貼り付けるのがお勧め。
[貼り付け]の文字部分をクリックして、一覧から[図]を選びます。
これで画像として貼り付ける事ができます。
後は、上の部分にマウスを移動してぐるっと回して回転です。
その際に、「Shift」キーを押しながら回転すると、綺麗に180°回転できます。
では、「教卓」の部分だけ何とかしましょう。
[挿入]タブ → [テキストボックス]をクリック。
[横書きテキスト ボックスの描画]をクリックして、
テキストボックスを描画して「教卓」と入力。
後は、文字を中央揃えにしてサイズを調整して移動すればOK。必要に応じて枠線を濃くしたりしても良いですね。
並べ替えを利用する
席を反転しつつも、文字は反転しないようにする方法です。
つまり、下の状態を、
下のようにします。
ポイントは、並べ替え機能を上手く使うこと。
先ほどよりも手順は多くなります。
ではやってみましょう。
まず、左側に新たに、並べ替えで使用する番号を設定するための列を挿入します。
「A列」の列番号の上で右クリックして、ショートカットメニューから[挿入]をクリック。
新たに挿入した列の、座席が始まる1番上の行に「1」と入力します。
※教卓など他と違ったレイアウトの場所を含めてはいけません。席の場所だけ上下を反転します。
右下の「+」を下に引っ張って、オートフィル機能を使用してコピーします。
コピーした直後に表示される「オートフィル オプション」をクリックして、一覧から[連続データ]を選択。
これで連続番号を簡単に振ることができます。
この番号を基準に、行の順番を入れ替えます。
今振った番号のセルを含めて選択して、
[ホーム]タブ → [並べ替えとフィルター]をクリック。
一覧から[ユーザー設定の並べ替え]を選びます。
[最優先されるキー]には、連続番号を振った列を指定して、[順序]は「大きい順」を選んで[OK]をクリック。
これで席の上下の順番が入れ替わりました。
まだ終わりではありません。今度は左右を反転する必要があります。
手順は同じです。
今度は座席が始まる上の行に連続番号を振ります。先ほどと同じくオートフィル機能を使用しましょう。
番号を含めた座席全体を選択して、
[ホーム]タブ → [並べ替えとフィルター]をクリック。
一覧から[ユーザー設定の並べ替え]を選びます。
先ほどと違い、まず[オプション]をクリックして、
並べ替える方向を変えるために[列単位]にチェックを入れて[OK]。
[最優先されるキー]には、連続番号を振った行を指定して、[順序]は「大きい順」を選んで[OK]をクリック。
これで、左右反転も終わりました。
後は「教卓」の移動ですね。これは簡単です。
選択して、
枠の位置にマウスを移動して、マウスカーソルの形が矢印十字になったら、
下へ引っ張って移動です。
最後に、不要な行や列を選択して削除すれば、
完成です。
考えながら操作すると時間がかかりますが、流れを理解すると短時間で反転することができますよ。
関数を利用する
最後に関数を利用する方法です。
使用する関数はINDEX関数。
では、下の座席表を右側に反転してみます。
まず、作成した元の座席表の行と列を数えます。
そして、反転した座席表を作成する場所の左と上に、数えた数字の大きい順の番号を振ります。
言葉で説明すると分かり難いですね。下の画像を参照してください。
この番号は、後で「INDEX関数」の引数として使用します。番号の並びが大きい順にしているのがポイント。これにより、元の表を反転することができます。
番号の振り方ですが、最初の2つだけ入力して、
その2つのセルを選択してから、
オートフィル機能を使用してコピーすると早いです。
※数字を2つ連続したセルに入力してオートフィル機能を使用すると、オリジナルの連続番号が振れます。
反転する予定の場所の上にも、逆順の番号を振ります。
同じく2つの数字を入力して、
右に、オートフィル機能を使用しましょう。
これで準備完了。
反転する予定のセル範囲の左と上に大きい順の番号が振られました。
では、「INDEX関数」を使用していきます。
「INDEX関数」は、一定の範囲から、指定した行列が交差した場所のデータを返してくれます。
INDEX関数・・・指定した範囲からセルの値を取り出す。
INDEX(配列,行番号,[列番号])
- 配列・・・セル範囲、または配列定数を指定(範囲が1行もしくは1列の場合、それぞれ行番号、列番号を省略できる)
- 行番号・・・配列の中にあり、値を返す行を数値で指定
- 列番号・・・配列の中にあり、値を返す列を数値で指定[省略可能]
ここでは、「INDEX関数」の詳しい説明はしません。興味のある方は、下のリンク先をご覧ください。
では、話を戻します。
新たに作成する表の左上クリックして、[関数の挿入]ボタンをクリック。
INDEX関数を選びます。
次の画面が表示されるので、
そのまま[配列、行番号、列番号]が選ばれた状態で[OK]をクリック。
関数の引数は下のように設定します。
- 配列・・・$B$3:$H$18・・・表全体を指定・・・絶対参照
- 行番号・・・$J4・・・行に振った番号を指定・・・列を固定
- 列番号・・・K$2・・・列に振った番号を指定・・・行を固定
後で関数をコピーすることを考えて、場所に応じてセル番地を固定する必要があります。
完成した式は、
=INDEX($B$3:$H$18,$J6,K$2)
セル番地の固定について不安な方は、下のリンク先をご覧ください。絶対参照の説明になります。
また、下のリンク先は、列か行どちらかを固定する複合参照の説明になります。
[OK]を押すと結果が表示されます。元の表の右下の氏名が最初に表示されました。ちゃんと反転していますね。
後はオートフィル機能を使用して、下に式をコピーして、
そのまま右に引っ張って、全体に式をコピーします。
「教卓」も1番下に移動していますね。
氏名全体が反転してくれたのですが、ちょっと問題があります。
- データが存在しなかった場所に「0」が表示されている
- 罫線や列幅を同じにする必要がある
- 関数の為に準備した連番を見えなくする必要がある
以上の3点です。
まず、「0」が表示されないようにしましょう。
「INDEX関数」はデータが存在しない場所には「0」を返します。そのため、IF関数を使用して、「0」が表示された場所は空欄にしてそれ以外の場合に「INDEX」関数を使用するように設定します。
=INDEX($B$3:$H$18,$J6,K$2)
この式を
=IF(INDEX($B$3:$H$18,$J3,K$2)=0,””,INDEX($B$3:$H$18,$J3,K$2))
こう変更します。
関数に慣れている方は、数式バーで直接IF関数の部分を入力してしまうのが早いでしょう。
ネスト(関数を入れ子にして使用する)に関して不安な方は、関数を作り直した方が早いと思います。
やってみましょう。
作成した式の「=」を抜いた部分を選択して、右クリックで「コピー」を選ぶかショートカットキーを使用してコピーしておきましょう。
そして、いったん作成した式を「Delete」キーで削除して、同じ場所に関数を作り直します。
使用するのは「IF関数」。
作成する引数を言葉にすると、下のようになります。
「もし、INDEX関数の結果が0ならば、空欄にする。違う場合は、そのままINDEX関数の結果を表示する。」
INDEX関数が必要な場所には、先ほどコピーしておいた式を、右クリックから「貼り付け」を選ぶか、ショートカットキーを使用して貼り付けます。
さらに、下の場所は自分で入力して追加します。
「=0」と、空欄を意味する「””」ですね。
[OK]を押して、表全体にコピーし直すと、「0」が消えた状態になります。
完成は近いですね。
次は、見た目を何とかしましょう。使用するのは「書式のコピー貼り付け」です。見た目だけをコピーできます。
元の座席表部分を選択して、
[書式のコピー/貼り付け]ボタンをクリック。
右の座席表部分をなぞります。
これで、線や文字の中央揃えの設定がコピーされました。ついでに、「教卓」部分も同じく書式コピーしたのが下の画像。
列の幅も同じにしたいですね。一部氏名が表示しきれず隠れてしまっています。
元の座席表の列番号を選択して、
列幅をコピー。
貼り付け先の列番号の上を引っ張って列選択。
[貼り付け]の文字部分をクリックして、一覧の一番下[形式を選択して貼り付け]を選びます。
表示された画面で、[列幅]にチェックを入れて[OK]。
これで列の幅だけをコピーできます。
最後に、「INDEX関数」のために用意した連続番号を隠す必要があります。
この数字は関数の引数と使用しているので、削除はできないのですね。
- 行列を非表示にする
- 文字の色を白にする
- 表示形式で隠す
方法としては、3つあります。
隠したい行番号と列番号の上で右クリックして、[非表示]を選んで隠すか、
番号のセルを選択して、
文字の色を白にしてしまうのも簡単で良いですね。
表示形式で隠すには、[ホーム]タブ → [セルの書式設定起動ツール]をクリック。
左側で[ユーザー定義]を選び、右側の「G/標準」とある文字を削除します。
その場所に半角のセミコロンを3つ「;;;」入力します。
これで、その場所のセル内の文字は非表示になります。
※ユーザー定義の書式設定は、「;」で区切ることで「正、負、ゼロ、文字列」と4つの形式を指定できるのですが、区切りとなる「;」を3つ入力することでセル内のデータを非表示にすることができます。
詳しく知りたい方は、下のリンク先をご覧ください。
表示形式で非表示にしたのが下の画像。
手順が多かったですが、やっと完成です。
まとめ
最初の画像の回転を使用する方法は見た目としてはあまり良いとは言えません。
しかし、プロジェクターや椅子など、図形も利用した座席表を作成していた場合は全てを反転するのは大変です。時間がない場合は一部画像の回転を利用したいところ。
また、並べ替えを利用する際は、座席のレイアウトに注意です。上部と下部が同じ席のレイアウトの場合は良いのですが、一部欠けた席などがあると、その場所の罫線を引き直す必要があります。
最後の「INDEX関数」を使用する方法は、一度作成しておけば、氏名を変更すれば、自動で反転した表も出来上がるのが良いところですね。しかし、様々なExcelの知識が必要になるので、難しめです。
自分に合ったものを選んでみてください。
少ない席数数の場合は、マウスでセルの移動を上手く使った方が早いかもしれないにゃ