人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

excelのVBAを組んでいただきたいです。

=0.000119*(($I$6-E23)/E23)^1.23
の式を使用して
E23からE69までは固定値I6を使用し
E70から117までは固定値I7を使用し、これをI482まで繰り返すものを作成したいです。
Eは48ずつの等間隔で22917まであり、Iは482まであります。

最初の式の形式も自由に変更してもらって大丈夫です。
わかりずらいかと思いますがよろしくお願いいたします。





●質問者: wakagaeri1
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● きゃづみぃ
●120ポイント ベストアンサー

計算が合わないです。
>E23からE69までは固定値I6を使用し

E23からE69までは 69-23で 46

>E70から117までは固定値I7を使用し、これをI482まで繰り返すものを作成したいです。

E70から117までは 117-70で 47

>Eは48ずつの等間隔で22917まであり、Iは482まであります。

22917-23= 22894 22894/482 = 47.4979

とりあえず 46で作りました。

Sub test()
 i = 6
 c = 1
 For a = 23 To 22917
 b = "=0.000119*(($I$" & i & "-E" & CStr(a) & ")/E" & CStr(a) & ")^1.23"
 Cells(a, "A").Formula = b
 c = c + 1
 If c > 47 Then
 c = 1
 i = i + 1
 End If
 Next a

End Sub


If c > 47 Then
この 47の値を 適宜変更してください。
ちなみに 数式は A列に セットされます。

A列以外の場合は、下記の"A"の箇所を 変更してください。
Cells(a, "A").Formula = b


wakagaeri1さんのコメント
すみません入力ミスしましたm(_)m 大変助かりましたありがとうございます。

2 ● EddyYamanaka
●80ポイント

"$I$6"の所を以下のようにすればセルに記述できますね。
INDIRECT("$I$"&INT((ROW(A23)-23)/48)+6)

"A23"や"-23"は記述するセルアドレス。
"/48"は同じ"$I$*"を参照する数。
"+6"は"$I$6"の"6"ね。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ