下記マクロは先ほど教えて頂いたマクロを少し変更して
指定セル値の合計をそれぞれ
セル「Y8=B4、E4・Y14=B10、E10・Y20=B16、E16中間省略Y116=B112、E112・Y122=B118、E118」に表示出来るようにしましたが、
マクロを実行すると
上記の全てのセルに
Y8の計算結果が表示されてしまいます。
解決方法を教えてください。
現状のマクロ
Sub Macro1()
Dim i As Long
Dim r As Long
Dim str1 As String
Dim str2 As String
Sheets("Table 2").Select
For i = 1 To 20
r = i * 6 + 2
str1 = "$Y$" & r
str2 = "=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$4,,CHAR(10)),--TEXTSPLIT($E$4,,CHAR(10))),2),"""")"
Range(str1) = str2
Next
End Sub
以上となります。
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
以下のようにしてください。
B列、E列はY列より4行小さいので、Y列の値から4を引いた値を採用しています。(x=r-4の箇所です)
Sub Macro1()
Dim i As Long
Dim r As Long
Dim x As Long
Dim str1 As String
Dim str2 As String
Sheets("Table 2").Select
For i = 1 To 20
r = i * 6 + 2
x = r - 4
str1 = "$Y$" & r
str2 = "=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$" & x & ",,CHAR(10)),--TEXTSPLIT($E$" & x & ",,CHAR(10))),2),"""")"
Range(str1) = str2
Next
End Sub
No.2
- 回答日時:
No1です。
Y8=B4、E4・Y14=B10、E10・Y20=B16、E16 ・・・ Y116=B112、E112・Y122=B118、E118
にしたいということですね。
見落としていました。No1は無視してください。
失礼しました。
No.1
- 回答日時:
Y8の内容
=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$4,,CHAR(10)),--TEXTSPLIT($E$4,,CHAR(10))),2),"")
Y14の内容
=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$4,,CHAR(10)),--TEXTSPLIT($E$4,,CHAR(10))),2),"")
Y20の内容
=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$4,,CHAR(10)),--TEXTSPLIT($E$4,,CHAR(10))),2),"")
が、同じになっています。
どのようにされたいのでしょうか。
Y8,Y14,Y20毎に提示してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2024/03/27 14:27
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2024/01/12 16:09
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2024/01/16 10:30
- Visual Basic(VBA) Excelのマクロについて教えてください。 2 2024/06/14 16:38
- Visual Basic(VBA) Sheet2からオートフィルターで売上日を抽出した件数をカウントし、その件数をSheet1のセルB1 2 2023/01/12 12:24
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/11/08 10:31
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2024/03/26 18:09
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2024/07/01 09:07
- Visual Basic(VBA) Excelのマクロについて教えてください。 1 2024/06/18 09:20
このQ&Aを見た人はこんなQ&Aも見ています
-


エクセルのマクロについて教えてください。
Visual Basic(VBA)
-


Excelのマクロについて教えてください。
Visual Basic(VBA)
-


【ExcelVBA】dictionaryの重複判断の基準(セル結合だと違う値として認識される)
Visual Basic(VBA)
-
-
4

VBAについて教えて下さい
Visual Basic(VBA)
-
5

エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
6

VBA 入力箇所指定方法
Visual Basic(VBA)
-
7

Visualbasicの現状について教えてください
Visual Basic(VBA)
-
8

VBAのループ処理について教えてください
Visual Basic(VBA)
-
9

質問58753 このコードでうまく動作しません。どうしたら良いですか Private Sub Wor
Visual Basic(VBA)
-
10

VB.net 文字列から日付型へ変更したい
Visual Basic(VBA)
-
11

エクセルのマクロついて教えてください。
Visual Basic(VBA)
-
12

python エラー
その他(プログラミング・Web制作)
-
13

エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
14

Excel セルにおけるフォント設定の取得
Excel(エクセル)
-
15

エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
16

Web画面の文字をVB6で取得したい
Visual Basic(VBA)
-
17

【ExcelVBA】5万行以上のデータ比較の効率的な処理方法について
Visual Basic(VBA)
-
18

エクセル タブの下のメニューを選択 実行するコード
Visual Basic(VBA)
-
19

エクセルvbaの対象セルに色をつける 例えば a日付 b種類 c値段 dその他 にんじん 50 ぴー
Visual Basic(VBA)
-
20

Excelファイルのすべての更新日時を調べる方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでCOPYを繰り返すと、処理が...
-
【マクロ】並び替えの範囲が、...
-
【マクロ】オートフィルター を...
-
Vba Array関数について教えてく...
-
Vba 型が一致しません(エラー1...
-
【ExcelVBA】値を変更しながら...
-
vbsでのwebフォームへの入力制限?
-
エクセルのマクロについて教え...
-
【ExcelVBA】5万行以上のデー...
-
VBAでセルの書式を変えずに文字...
-
【マクロ】開いているブックの...
-
Vba セルの4辺について罫線が有...
-
vb.net(vs2022)のtextboxのデザ...
-
Excel VBA 選択範囲の罫線色の...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
エクセルの改行について
-
VBAで特定の文字が入った行をコ...
-
WindowsのOutlook を VBA から...
-
Excel 範囲指定スクショについ...
-
【マクロ】シートの変数へ入れ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vba セルの4辺について罫線が有...
-
vbsでのwebフォームへの入力制限?
-
【ExcelVBA】5万行以上のデー...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
【マクロ】並び替えの範囲が、...
-
エクセルの改行について
-
エクセルのマクロについて教え...
-
vb.net(vs2022)のtextboxのデザ...
-
VBAでCOPYを繰り返すと、処理が...
-
VBA ユーザーフォーム ボタンク...
-
エクセルのVBAコードと数式につ...
-
エクセルのVBAコードについて教...
-
[VB.net] ボタン(Flat)のEnable...
-
【マクロ】変数を使った、文字...
-
改行文字「vbCrLf」とは
-
質問58753 このコードでうまく...
-
【マクロ】シートの変数へ入れ...
-
ワードの図形にマクロを登録で...
-
算術演算子「¥」の意味について
おすすめ情報












回答ありがとうございます。
元のマクロコードは
Sub 室面積()
Sheets("Table 2").Select
Range("$Y$8").Formula = "=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$4,,CHAR(10)),--TEXTSPLIT($E$4,,CHAR(10))),2),"""")"
Range("$Y$14").Formula = "=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$10,,CHAR(10)),--TEXTSPLIT($E$10,,CHAR(10))),2),"""")"
文字数の関係で次になります。
Range("$Y$20").Formula = "=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$16,,CHAR(10)),--TEXTSPLIT($E$16,,CHAR(10))),2),"""")"
Range("$Y$26").Formula = "=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$22,,CHAR(10)),--TEXTSPLIT($E$22,,CHAR(10))),2),"""")"
Range("$Y$32").Formula = "=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$28,,CHAR(10)),--TEXTSPLIT($E$28,,CHAR(10))),2),"""")"
途中省略
Range("$Y$122").Formula = "=IFERROR(ROUND(SUMPRODUCT(--TEXTSPLIT($B$118,,CHAR(10)),--TEXTSPLIT($E$118,,CHAR(10))),2),"""")"
以上となります。
よろしくお願いいたします。