データの上を素早く移動する

難易度 ☆
便利度 ☆☆☆☆☆
認知度 ☆☆☆☆

Excelでデータ分析をする際のほとんどは、ワークシートに分析対象のデータを貼り付けて、それを操作することになります。すると、そのデータの上を自在に行き来したり、選択したり、コピーペーストしたりしたくなります。その際にいちいちスクロールバーをマウスでクリックしたり、マウスのホイールで画面を移動したりしていては非常に時間がかかりますし、なによりくりくり移動している間に何をやりたかったのか忘れてしまいます。そこで、

データの上をすいすい移動する方法

やることは単純で、[ctrl]を押しながら矢印キーを押すこと。すると、データが入っている方向の最後までカーソルが飛んでいきます。例えば、データの一番上にカーソルがある状態で、[ctrl]+[↓]を押すと、データの一番下まで飛んでいきます。

[ctrl]+[↓] を押すと

この例では、一つの画面の中にデータが収まっているので、マウス操作でも簡単にできるように思えますが、データが何万行だった場合にはマウス操作では時間がかかりすぎます。[ctrl]+矢印キーで最後まで飛べるのは多大な時間節約になります。

その応用:範囲選択

[shift]を押しながら矢印キーを押すと、範囲選択をしながらカーソルが動くのはご存じでしょうか。これを[ctrl]ジャンプと組み合わせると、一瞬で大きな範囲のデータを選択できます。例えば、一番最初の画像、「時刻」と書かれた場所にカーソルがありますが、ここから、[ctrl]と[shift]の両方を押しながら、[↓]、[→]と続けて押すと、

このように、一瞬でデータの全域を選択できます。これも、サンプルではデータの全てが見えているのでマウス操作でも簡単にできますが、データの行数、列数が非常に大きい場合はマウス操作では日が暮れます。ちなみにこの選択は、グラフを作るときなどによくやりますね。この選択のと、メニューからグラフ挿入を選ぶと、選択範囲のデータを使ったグラフが挿入されます。

[shift][ctrl]での範囲選択は矩形なので、例えば上のサンプルデータでデータ部分だけを選択したい場合は、選択したい領域の左上端から選択を開始すればOK。

さらに応用:ジャンプアンカーを作る

実は、[ctrl]+矢印でのジャンプはデータの最後まで飛ぶという仕様ではなくて、データがあればあるところの最後まで、無ければそこから飛び始めてデータのあるセルにぶつかるまで、です。よって、今、データの無いところにいる場合に、データのあるところまで飛んでいくことにも使います。一つのワークシートに複数のテーブルがある場合に便利です。

また、その性質を利用して、例えば1000行ずつ、または1000列ずつ飛びたいという事もできます。

データや数式が入っていれば入っているところの末端まで、入っていなければ入っているところまで飛ぶので、「1000行おきにデータが入っている列」をあらかじめ作っておけば、その列を[ctrl]+[↓]を押すことで1000行飛ばしで連続的にジャンプできるようになります。つまり、ジャンプするためのアンカーを置いておく、という感じです。この技は、例えばデータを全部見るのは大変だけれど、1000行おきにざっと確認したい、などといった場合に使えます。

ちなみに、1000行程度ですと[PageDown]によるスクロールでも高速に画面を飛ばしていくことができますが、1万行ずつとなるとなかなか時間がかかります。また、実はexcelは列方向の移動が弱いので、列方向に高速移動したいと思うと、この方法を使うことが多いです。

では、この「N行(またはN列)毎にデータが入っている列(または行)」を作るにはどうしたらよいか。これに多大な時間がかかっていては本末転倒ですので、次のようにします。

まず、適当な列に上から1,2,3,...,1000の数字を入れます。このとき、1だけは数字を入力し、それ以降は「上のセル+1」という数式を入れるようにすると楽です。

このように、セルに「上のセル+1」を入力し、これを下方向に大量にコピーします。コピーは[ctrl]+C、そのあと、[shift]を押しながら[PageDown]で下方向に大量に選択できますので、適当に沢山選択し、[ctrl]+Vでペースとします。すると、こんな感じ。

このときは勢いで1093行(1が除かれているので、2から1094まで)ペーストしました。この数は適当です。

さて、ここから、今度はもう一度上に戻って、今度は2の入っているセルから1094の入っているセルまでを選択します。これらのセルはすべて、「上のセル+1」という数式が入っていることに注意します。

すると、コピーした1093行のセルはすべて、「上のセル+1」という数式が入っているので、セルの値は1094以降、1095,...,2087になります。もちろんカーソル移動は[ctrl]+矢印で行うので、ここまでの操作は1秒ほどです。

この、移動、ペースト、移動、ペースト・・・を10回繰り返しますと、結果として1から1万くらいまで順番に入った列ができます。そうしたら、一番上と一番下のセルを残してあとを削除します。これは、2番目のセルから[shift]を押しながら選択を開始し、[ctrl]+[↓]で一番下まで動いた後、[ctrl]だけを離して([shift]は押しっぱなし)一つだけ[↑]に移動すると、一番上と一番下を残して選択できるので、[delete]で削除します。これで、「1~間に約1万行分の空き~1」(最後の1は、上のセルが空白なので、空白+1=1が入る)を作ることができましたので、最後にこれをコピーペーストしていきます。

一番上の1が書かれたセルに移動し、そこから[shift]を押して選択開始、[ctrl]+[↓]で、約1万行下の1にジャンプします。[shift]は押しっぱなしなので、その間が全て選択されており、その状態で[ctrl]+Cを押すと、コピーできます。つまり、

ここから、[shift]と[ctrl]を同時に押しつつ、[↓]を押すと、このセルより下で最初にデータもしくは数式が入っているセル(先ほど一つだけ残した場所)まで、選択肢ながらジャンプします。そしたら[shift][ctrl]を離し、再度[ctrl]+Cでコピー。

コピーが終わったら、選択範囲の次の行に移動してペーストすると、先ほどコピーした、「1~約一万行の空セル~数式」というセルが下向きにコピーされるので、次の数式の位置が二万行あたりに出現します。これを10回繰り返すと、10万行まで、約1万行毎にジャンプできる列ができあがります。

注意点は、ペーストする際に「元のコピー領域の外にペーストする」ことです。ペーストした領域が元のコピー領域にかぶってしまうとコピー領域が解除され、連続ペーストができなくなってしまいます。

なお、これを横向き、列方向に実施したい場合は、縦でデータ列を作ってからメニューより「行列を入れ替えて貼り付け」を実施するのが楽です。列方向移動は[PageDown]のようなキーがないので、非常に面倒ですが、上のようにあらかじめ1万行毎、もしくは1000行毎にデータを入れた列を作り、それを行列入れ替えで貼り付けておくと、横移動が非常に楽になります。何千行とカラムを持っているデータを扱う際は、一番最初にこのようなジャンプアンカーをつくっておくことが多いです。

おわりに

他にも、[ctrl]+矢印ジャンプは様々な場合で便利ですし、たったこれだけを習得することで、データの俯瞰に要する時間がかなり短縮されます。また、ジャンプアンカーをうまく作ることで、データの思ったところに着地することが容易になります。ぜひ試してみてください。

この記事が気に入ったらサポートをしてみませんか?