シミュレーションの作り方 15



その15 効率よくDATAを作成するには



 大量DATAを作成する為には、関数の入ったセルを大量に作る必要があります。

そのために是非とも知っておく必要があるのが「絶対セル」表示と「相対セル」表示の違いをよく理解し効率よくコピーできる関数式を1つ用意しておけば後はそれをコピーするだけで大量のDATAが一瞬で作成できるようになります。

 ここまでの説明で「よく分からない」という方は以下の説明を参考にしてください。

 

セル番地とは

 

 Excelでは各セルの位置表すのにセル番地を使用します。

 例えばA1と表されるセル番地は、A列1行目、C6はC列6行目のセルというようにローマ字で列、数字で行を表しその交点のセルという意味です。

 

相対セル表示とは

 

 右画面のように、

① A1に「」と入力します。注釈のようにExcel画面の列名ABC・・の上に、選択しているセル番地とそこに入っている値や数式の内容が表示されます。

② 続いて、C6セルに =A1 とを記述しENTERを押すと、列名上にはセル番地と入力した数式が表示されますが、C6セルにはでA1セルに入力した「」という値が表示されます。式 =A1 という式の結果が表示されるのです。

③ 続いてC6セルをそのまま(セルごと)コピーし、E8セルに貼り付けます。列名の上にはセル番地E8とそこに記されている数式が表示されますがコピーしたはずの =A1 ではなく =C3 と番地が勝手に変わっています。E8セルには当然C3の内容(何も入れてないので0)が表示されています。

 このようにC6から右2、下2にあるE8にC6の数式を貼り付けると、数式内で指定したセル番地A1も同じように右2、下2にあるC3に変わっていきます。このように相対的に動いていくセルを相対セルといいます。 

 

絶対セル表示とは

 

 次に右画面のように、

① A1に「」と入力します。

② 続いて、C6セルに =$A$1 とAと1の前に$マークを付けたを記述します。C6セルにはでA1セルに入力した「」という値が表示されます。ここまでは相対セル表示のときと同じです。

③ 続いてC6セルをそのまま(セルごと)コピーし、E8セルに貼り付けます。列名の上にはセル番地E8とそこに記されている数式が表示されます。相対表示の時はこれが =C3 と番地が勝手に変わっていましたが、今度は =$A$1 のまま変わっていません。当然E8セルにはA1セルの内容 6 が表示されています。

 このようにC6から右2、下2にあるE8にC6の数式を貼り付けても、数式内でマークを付け指定したセル番地は変化しなくなるのです。このように他のセルにこコピー&ペーストしても変化しないセル番地のことを絶対セルといいます。

 上画面の例は列名、行番号共にその前にマークをつけましたが、

 列名だけにを付けた場合($A1)はその列名だけが固定されますが行番号は相対セル表示のままなので、貼り付ける行番号が違えば行番号だけ一緒に変化します。また、行番号の前にだけマークを付けた場合(A$1)ば貼り付ける列が違えば列は相対セルなので列名は一緒に変化します。

 

 このように$を付けない場合(相対セル表示)は付けない行や列がコピーによって一緒に変化していくのに対し、$を付けた場合(絶対セル表示)は式内のセルの行や列が固定されコピーによって変化しません。この違いをうまく使うと最小限の数式を用意すればあとはコピーすることで大量のDATAが一瞬でえられます。次はその利用例を解説します。

利用例

 

「グラグで10個の同心円を描くためのDATAを作成する」

 

 

 半径が1~20の20個の同心円を、中心角1度ごとにの位置をDATAとして作成し、これを元に各円をグラフで描いてみる。  

 まず、

 A列30~390行に0~360の数字を入れます。(A30に0を入れ、CTRLを押しながらセル右下角に出る+マークを下にドラッグ「引きずる」すると連続数値が記載される

 

 B30には右上画像のように =A30*PI()/180 または =RADIANS(A30) という数式を記載します。

 

 C30には =C$28*COS($B30)

   D30には =C$28*COS($B30)

          C28には  

   を入力しておきます。いずれの式もこれを元に、

 右に向けにコピーしても動いてはいけないものには列名の前に$マークをつけ一緒に動いてもらいたい列名の前には$をつけないように、また

 下に向けにコピーしても動いてはいけないものには行番号の前に$マークをつけ一緒に動いてもらいたい行番号の前には$をつけないようにコピーを前提にした数式です。

 

 C29:D30 の範囲を選択し、右画面のようにE9:F30の範囲にドラッグします。(コピペではありません。)

 C29:D30 の範囲を選択選択し右下角にマウスポインタを持っていくと、図のように印が出るのでそこをクリックしたまま右にF30右隅まで引っ張るとX1→X2にY1→Y2に変わり、E30,F30にはいづれもが表示され、次の画面のようになります。

 次にE28に =C28+5 という数式を入力します。

 E30には10がF30には0が表示され、それぞれには右図のような数式がが入っています。

 

 次にE28:F30の範囲を選択し、それを右にAP列までドラッグすると、画面中の下画面のようにAO、AP列にはX20、Y20の中心角0度における値100,0が表示されます。

 

 下準備はここまでで、これまでに入力したセルはB30,C30,D30,C28 の4セルのみです。

 最後にB30:AP30の範囲を選択し、AP30右下隅のをAP390までドラッグする。

  

 以上で半径5~100までの20個の円を描くためのDATA(14,440個分)が得られたことになります。

 

 後はこれを散布グラフを使って表わします。結果は次の画面です。       end


ファンクションンキーF4の利用。

 

 キーボード最上列には色々な機能を持ったF1~F12のキーが並んでいますがこれがファンクションキーですが、マークを手軽に付帯させる機能を持つのがF4キーです。

 あるセルにまず = だけを入力し次にマウスでG4セルをクリックすると、=G4 と記載されます。(手動で=G4とキーボードから入力するのと同じ)

その直後F4

 1度目を押すと =

 2度目を押すと =G

 3度目を押すと =G4

 4度目を押すと =G4    というように変化していきます。  2018.1.30