• ベストアンサー

エクセルで変数の組み合わせを変えて値を導く方法

例えば z(x,y)=x+2y でx=1~100、y=1~100に変化させて z(1,1)=3 z(1,2)=5   ・   ・   ・ z(100,99)=298 z(100,100)=300 というようにzの値を求めるにはどのようにすればよいでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

(1)これは、VBAプログラム向きの問題ですね。 Sub test01() Application.ScreenUpdating = False k = 1 For x = 1 To 100 For Y = 1 To 100 Cells(k, "A") = x Cells(k, "B") = Y Cells(k, "C") = x + 2 * Y k = k + 1 Next Y Next x Application.ScreenUpdating = True End Sub ただ実行してみると、時間がかかる。 組み合わせで6万を越えると別列にセットが必要。 (2)エクセルらしいのはオートフィルでX,Yの組み合わせを値域に渡って作り、計算は関数で行う(既回答)

f_f
質問者

お礼

VBAプログラム? 初めて目にする言葉でしたので、実際に行うのに手間取りました。マクロ関係は今までに全く使ったことのない機能で、とてもよい勉強になりました。ありがとうございました。

その他の回答 (3)

回答No.3

一列に並べるなら・・・ A1:=INT((ROW($A1)-1)/100)+1 B1:=MOD(ROW($B1)-1,100)+1 C1:=$A1+2*$B1 10000行までフィルコピーします。

f_f
質問者

お礼

ありがとうございます。この方法だと変数が3つ以上にも応用できます!

  • FEX2053
  • ベストアンサー率37% (7991/21372)
回答No.2

一覧表が要るんですか? でしたら、A列の2行目から101行目に1~100、1行目のB列から CW列に1~100を入力してください(セル右下の黒四角を引っ張る 「オートフィル」を使うと入力がラクですね)。その上で、B2セルに =$A2+B$1*2 こう入力して、CW101セルまでコピーすれば一覧表が出来ます。 「相対参照、絶対参照、複合参照を切り替える」の例として、 色々な教科書にも出てきますし、Excelのヘルプにも記述があります。

f_f
質問者

お礼

ありがとうございます。参考になりまりた。

回答No.1

ご希望の解は以下の要領で求められますが 意図されている事がよく分かりません。 1.A1 のセルに =ROW()+COLUMN()*2 と入力します。 2.上記数式を 100 行目、CV 列までコピーします。 3.必要があれば、ツール→オプション→全般の「R1C1 参照形式を使用する」に   チェックを入れます。

f_f
質問者

お礼

ありがとうございました。グラフ化を考えておりました。

関連するQ&A