ExcelのIndirect関数は「参照の参照」ができて、お利口さんなんだエクセル親子ゲームで学ぶ“コンピュータっぽい考え方”(3)(1/2 ページ)

本連載では、書籍『子どもの“プログラミング的思考”をグングン伸ばす本』の中から、Excelの機能を使って作ったゲーム(VBAではない)を通じて、コンピュータがどう考えているのかを学べる章を厳選して転載する。「Excelの機能を使う」こと自体も「プログラミング」に通じていることを体感してほしい。今回は、Excelが持つ「座標」の概念(行と列)と「参照」の考え方について。

» 2017年10月06日 05時00分 公開
[横山達大]

連載目次

子どもの“プログラミング的思考”をグングン伸ばす本

書籍の中から有用な技術情報をピックアップして紹介する本シリーズ。今回は、秀和システム発行の書籍『子どもの“プログラミング的思考”をグングン伸ばす本(2017年3月1日発行)』からの抜粋です。

ご注意:本稿は、著者及び出版社の許可を得て、そのまま転載したものです。このため用字用語の統一ルールなどは@ITのそれとは一致しません。あらかじめご了承ください。


※編集部注:前回記事「フラッシュフィルでExcelはどう考えている?」はこちら

頼りはセル番地のみ

father

数当てゲームをしよう、ダイゴ


 ダイゴ君の部屋に入ってきたお父さんがそういうので、ダイゴ君はパソコンに向かいました。

father

まずは好きな数字を頭に思い描いてごらん。そしたら、その数字を1000行目よりも後のセルに入力してみて。もちろんお父さんは後ろを向いているからダイゴの入力した数字は見ていないよ


 ダイゴ君は選んだセルに数字を入力します。

father

ダイゴにお願いがある。入力したセル番地も覚えていてほしいんだ。ちゃんと覚えたら画面を一番上までスクロールしておいてくれ


 ダイゴ君は、A列1行目を選んでからお父さんに「いいよ」と告げました。

father

じゃあ次に、ダイゴが選んだセルの列番号をセルA1に入力してほしい


 ダイゴ君は、セルA1に『D』と入力しました。

father

次にダイゴの選んだセルの行番号をセルB1に入力してみて…


daigo

それじゃあ、僕の選んだセルがわかってしまうよ


father

大丈夫、お父さんはそのセル番地まで画面をスクロールしたりしないから。それに、そもそもセル番地がわかるとダイゴの選んだ好きな数字がわかってしまうのかい?


 ダイゴ君は、自信をもって言いました。

daigo

だって、計算式を使えば答えがわかるじゃないか。『=D1110』とセルに入力すれば、セルD1110の値が表示されることを知っているよ


 お父さんは感心しながら言いました。

father

セル参照を知っているとはさすがだね。でも心配いらないよ。お父さんはダイゴ君の選んだセル番地を決して入力しないから。それにもう1110行目だとわかってしまったしね


daigo

しまった!


 ダイゴ君はお父さんに言われるとおり、セルB1に『1110』と入力しました。

ダイゴ君が入力した列番号と行番号
father

ダイゴ、改めて好きなセルを選んでみて。そのセルを使ってダイゴの選んだ数字を当てて見せるよ


 ダイゴ君は、セルD2を指さしました。

 それでは始めるぞ、という目くばせをしてお父さんはセルに何やら入力しています。ダイゴ君はじっとその作業を見守っていました。

father

ダイゴ君、君の選んだ好きな数字は、『627』だね

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。