3

このタイプの に対する答えが欲しいとしますformula = SUM(startcell:endcell)が、startcellコンポーネントendcellは変更されます。

したがってC1、式で直接使用して cell の値を表すのではなくC1、値が何であれ使用して、式でB1, B2, and B3表すことができるものを構築できるようにしたいC1ですか?

おそらく、質問をするより良い方法は、「Excel には Python のようなものがありますeval()か?」です。

代替テキスト

4

4 に答える 4

8

エクセルの数式を文章で説明するのは面倒…画像の方がいいと思います

代替テキスト

チッ!

于 2010-12-09T05:29:57.883 に答える
1

指定した入力からセルアドレス文字列を作成できるアドレス式の方が便利だと思います。表記は=ADDRESS(row_number, column_number,absolute_number_flag,bool_A1Style,sheet_text)です。

したがって、あなたの例では: - Sheet1!R1C3 を返すには、=ADDRESS(B3,B2,,FALSE,B1) を使用します - Sheet1!C1 を返すには、=ADDRESS(B3,B2,,TRUE,B1) または =ADDRESS を使用します(B3,B2,,,B1)

次に、この返されたアドレスに対して INDIRECT 関数を使用できます。

sum() 関数を使用して動的範囲を合計したい場合は、2 つのアドレス呼び出しを使用して、範囲全体の文字列を作成できます。

EG 例のセル C3 と C4 に値 5 を追加して、最後のセルの行と列を指定した場合、=ADDRESS(B4,B3,,,B2)&":"&ADDRESS(C4, C3) 'Sheet1!'!$C$1:$E$5 を返す

まだ画像を投稿できないので、これがテキストで意味をなすことを願っています!

于 2010-12-09T09:14:38.073 に答える
0

あなたが試すことができます

formula = SUM(INDIRECT(B1),INDIRECT(B2),INDIRECT(B3))

さらにテストを行って、範囲で作業できるかどうかを確認します

于 2010-12-09T04:58:39.177 に答える
-2

代替テキスト

于 2010-12-09T15:15:54.750 に答える