ExcelのIndirect関数は「参照の参照」ができて、お利口さんなんだ:エクセル親子ゲームで学ぶ“コンピュータっぽい考え方”(3)(1/2 ページ)
本連載では、書籍『子どもの“プログラミング的思考”をグングン伸ばす本』の中から、Excelの機能を使って作ったゲーム(VBAではない)を通じて、コンピュータがどう考えているのかを学べる章を厳選して転載する。「Excelの機能を使う」こと自体も「プログラミング」に通じていることを体感してほしい。今回は、Excelが持つ「座標」の概念(行と列)と「参照」の考え方について。
書籍の中から有用な技術情報をピックアップして紹介する本シリーズ。今回は、秀和システム発行の書籍『子どもの“プログラミング的思考”をグングン伸ばす本(2017年3月1日発行)』からの抜粋です。
ご注意:本稿は、著者及び出版社の許可を得て、そのまま転載したものです。このため用字用語の統一ルールなどは@ITのそれとは一致しません。あらかじめご了承ください。
※編集部注:前回記事「フラッシュフィルでExcelはどう考えている?」はこちら
頼りはセル番地のみ
数当てゲームをしよう、ダイゴ
ダイゴ君の部屋に入ってきたお父さんがそういうので、ダイゴ君はパソコンに向かいました。
まずは好きな数字を頭に思い描いてごらん。そしたら、その数字を1000行目よりも後のセルに入力してみて。もちろんお父さんは後ろを向いているからダイゴの入力した数字は見ていないよ
ダイゴ君は選んだセルに数字を入力します。
ダイゴにお願いがある。入力したセル番地も覚えていてほしいんだ。ちゃんと覚えたら画面を一番上までスクロールしておいてくれ
ダイゴ君は、A列1行目を選んでからお父さんに「いいよ」と告げました。
じゃあ次に、ダイゴが選んだセルの列番号をセルA1に入力してほしい
ダイゴ君は、セルA1に『D』と入力しました。
次にダイゴの選んだセルの行番号をセルB1に入力してみて…
それじゃあ、僕の選んだセルがわかってしまうよ
大丈夫、お父さんはそのセル番地まで画面をスクロールしたりしないから。それに、そもそもセル番地がわかるとダイゴの選んだ好きな数字がわかってしまうのかい?
ダイゴ君は、自信をもって言いました。
だって、計算式を使えば答えがわかるじゃないか。『=D1110』とセルに入力すれば、セルD1110の値が表示されることを知っているよ
お父さんは感心しながら言いました。
セル参照を知っているとはさすがだね。でも心配いらないよ。お父さんはダイゴ君の選んだセル番地を決して入力しないから。それにもう1110行目だとわかってしまったしね
しまった!
ダイゴ君はお父さんに言われるとおり、セルB1に『1110』と入力しました。
ダイゴ、改めて好きなセルを選んでみて。そのセルを使ってダイゴの選んだ数字を当てて見せるよ
ダイゴ君は、セルD2を指さしました。
それでは始めるぞ、という目くばせをしてお父さんはセルに何やら入力しています。ダイゴ君はじっとその作業を見守っていました。
ダイゴ君、君の選んだ好きな数字は、『627』だね
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Excelの「名前の定義」でセルの範囲に名前を付ける
Excelの「名前の定義」を使って、セルの範囲に「名前」を付ける方法を紹介する。「名前」を付けると、関数内でセルの範囲を参照する際などに簡単かつ分かりやすく指定できる。セル範囲に名前を定義する方法とその管理方法などを紹介する。 - Excelの基本オブジェクト「セル」の参照、移動、コピー、選択、挿入、削除
プログラミング初心者を対象にExcelマクロ/VBAを使った業務自動化プログラムの作り方を一から解説します。今回は、さまざまなセルの参照、移動、コピー、選択、挿入、削除の仕方に加え、行の高さ、列幅の変更方法などについて【Windows 10、Excel 2016に対応】。 - これなら使えるExcel VLOOKUP関数
ExcelのVLOOKUP関数は、複数の表から一致するデータを検索して、表を上手に結合してくれる便利な機能だ。ただ利用には、ちょっとした手順を踏む必要があり、ついつい忘れがちだ。本Tech TIPSでは基本的なVLOOKUP関数の使い方の要点をまとめる。