
図のような表があります。
この表で、B1~B2、B6~B7は1行から4行の間で変化します。
ただし、B1~B2の行数とB6~B7の行数は同じです。
A10のセルに=SUM(B6,B7,(B6-C6*B2/100),(B7-C7*B3/100))という計算式を入れたいのですが
上記のように行数が変化するので
B1=cells(gyou,2) B2=cells(gyou1,2)
B6=cells(gyou+5,2) B7=cells(gyou1+5,2)
c6=cells(gyou+5,3) c7=cells(gyou1+5,3)
としています。ここでgyou1は1から4の間で変化します。
ほんとうは
cells(gyou+9,1).Formula=SUM(cells(gyou+5,2):(cells(gyou1+6,2)-cells(gyou1+6)*cells(gyou1,2)/100))
とできると良いのですが、エラーになります。
SUM(cells(gyou+5,2):cells(gyou1+5,2))はOKですが、
SUM((cells(gyou+5,3)-cells(gyou+5,2)*cells(gyou,2)/100)):(cells(gyou1+5,2)-cells(gyou1+5,3) _
*cells(gyou1,2)/100))が、NGです。
これをどのようにコードを書くと良いのか教えて下さい。

A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
こんばんは!
NG部分内のコロン「:」をカンマ「,」に変更し
SUM((cells(gyou+5,3)-cells(gyou+5,2)*cells(gyou,2)/100)),(cells(gyou1+5,2)-cells(gyou1+5,3)*cells(gyou1,2)/100))
または
表示セル=(cells(gyou+5,3)-cells(gyou+5,2)*cells(gyou,2)/100))+(cells(gyou1+5,2)-cells(gyou1+5,3)*cells(gyou1,2)/100))
のようにSUMを使用せず、単純に「+」を使って足し算ではどうでしょうか?
検証していませんので、外していたらごめんなさいね。m(__)m
この回答への補足
回答ありがとうございます。
分かりにくいようですが、SUM(:)としたいのは、この表ではB1,B2及びB6,B7は2行ですが、これが1行だったり3行だったり4行だったりするのです。
現在gyou=1,gyou1=2ですが、gyou2を1から4の間で変化させてSUMで合計する範囲を行数に合わせて変化させようとしています。
SUM(,)や+では合計する行数の変化に対応できないので、たぶんですが配列数式を使うと良いのではないかと思うのですが。
No.2
- 回答日時:
> SUM(B6:(C7-B7×B2/100))/4.08としたいのですが、
はどのような計算をしたいのかさっぱりわかりません
その説明の手助けとしてにサンプルがほしかったわけですが。
エラーに関してはは多分#VALUEエラーだと思われますが、その原因はなんだと思われますか?
おそらく、エラー解決策として
=(IF(COUNT(B1,B6,C6)<>3,0,100*C6+(100-B1)*B6)
+IF(COUNT(B2,B7,C7)<>3,0,100*C7+(100-B2)*B7)
+IF(COUNT(B3,B8,C8)<>3,0,100*C8+(100-B3)*B8)
+IF(COUNT(B4,B9,C9)<>3,0,100*C9+(100-B4)*B9))
/408
No.1
- 回答日時:
質問1
説明と添付図との整合性が取れていません。
質問2
それとサンプルを数点、結果提示してください。
質問3
A10セルに
=SUMPRODUCT((B6:B9*2-C6:C9*B1:B4/100))
を入力た場合の結果は? あっている/間違っている/エラーとなる
この回答への補足
質問1について
申し訳ありません、間違っていました。
A10セルで求めたい計算結果はこの表の場合はSUM(B6,B7,(C6-B6×B1/100),(C7- B7×B2/100))/4.08です。
変数gyouは1ですが、gyou1は1~4の間のどれかです。
行数が変化するのでSUM(B6,B7,(C6-B6×B1/100),(C7-B7×B2/100))/4.08の式では、対応できず
SUM(B6:(C7-B7×B2/100))/4.08としたいのですが、これではエラーになってしまうので困っています。
質問3について
エラーになります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 最終列の右へSUM関数を作成するため下記コードを実行しましたが、最終列「10月28日」が上書きされて 3 2022/12/05 20:32
- Visual Basic(VBA) エクセルVBA 3 2022/06/23 20:00
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたい 6 2023/01/23 12:00
- Visual Basic(VBA) ローマ字、ハイフン付きの並び替え ローマ字抽出方法 Excelマクロ 4 2022/04/01 14:10
- Excel(エクセル) マクロ(データ取得と転記)について教えてください 3 2022/12/24 12:18
- Visual Basic(VBA) VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。 19 2022/07/26 13:07
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
連続ではない三つのセルの値の...
-
特定の文字がある行以外を削除...
-
VBA シートをコピーする際に Co...
-
【Excel関数】UNIQUE関数で"0"...
-
Worksheets メソッドは失敗しま...
-
Excelで、あるセルの値に応じて...
-
B列の最終行までA列をオート...
-
EXCELのSheet番号って変更でき...
-
IIF関数の使い方
-
エクセルで離れた列を選択して...
-
Cellsのかっこの中はどっちが行...
-
Excelで空白セル直前のセルデー...
-
EXCELで最後の行を固定
-
VBA 別ブックからコピペしたい...
-
特定の色のついたセルを削除
-
エクセルでセルをクリックする...
-
エクセル マクロで数値が変っ...
-
VBAマクロ実行時エラーの修正に...
-
エクセル 上下で列幅を変えるには
-
エクセルVBA 配列からセルに「...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA
-
Range("A1")⇔cells(1,1)の変換。
-
vba formulaの中での変数の扱い
-
VBA SUM関数に変数を入れた計算...
-
AccessVBAから、Excelシート内...
-
エクセルのマクロで範囲を値貼...
-
VB2010でのExcel操作
-
連続ではない三つのセルの値の...
-
「段」と「行」の違いがよくわ...
-
VBA シートをコピーする際に Co...
-
エクセルで離れた列を選択して...
-
VBAマクロ実行時エラーの修正に...
-
Excelで、あるセルの値に応じて...
-
別ブックをダイアログボックス...
-
Worksheets メソッドは失敗しま...
-
【Excel関数】UNIQUE関数で"0"...
-
マクロの「SaveAs」でエラーが...
-
vba 2つの条件が一致したら...
-
特定の文字がある行以外を削除...
-
特定の色のついたセルを削除
おすすめ情報