
下記マクロは先ほど教えて頂いたマクロを少し変更して
指定セル値の合計をそれぞれ
セル「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)
-
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
VBA初心者です。次のVBAコードで、17行目を削除したいのですがうまく動きません 改善策を教えてく
Visual Basic(VBA)
-
-
4
【ExcelVBA】dictionaryの重複判断の基準(セル結合だと違う値として認識される)
Visual Basic(VBA)
-
5
VBAについて教えて下さい
Visual Basic(VBA)
-
6
Excelのマクロについて教えてください。
Visual Basic(VBA)
-
7
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
8
VBAのループ処理について教えてください
Visual Basic(VBA)
-
9
VBA 入力箇所指定方法
Visual Basic(VBA)
-
10
VB.net 文字列から日付型へ変更したい
Visual Basic(VBA)
-
11
Visualbasicの現状について教えてください
Visual Basic(VBA)
-
12
質問58753 このコードでうまく動作しません。どうしたら良いですか Private Sub Wor
Visual Basic(VBA)
-
13
VBA コードどこがおかしいですか?
Visual Basic(VBA)
-
14
プログラミングを学ぼうと思います。 1ヶ月程度である程度習得できる言語は何ですか?ブラウザ上でアプリ
その他(プログラミング・Web制作)
-
15
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
16
エクセルのマクロついて教えてください。
Visual Basic(VBA)
-
17
エクセル タブの下のメニューを選択 実行するコード
Visual Basic(VBA)
-
18
Web画面の文字をVB6で取得したい
Visual Basic(VBA)
-
19
Excelのマクロについて教えてください。
Visual Basic(VBA)
-
20
エクセルのマクロについて教えてください。
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【マクロ】並び替えの範囲が、...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
エクセルの改行について
-
[VB.net] ボタン(Flat)のEnable...
-
質問58753 このコードでうまく...
-
【ExcelVBA】5万行以上のデー...
-
vbs ブック共有を解除
-
VBAでCOPYを繰り返すと、処理が...
-
vbaにてseleniumを使用したedge...
-
【マクロ】開いているブックの...
-
(EXCEL超初心者)EXCELの関数(ま...
-
算術演算子「¥」の意味について
-
Excel 範囲指定スクショについ...
-
2つのマクロでチェックボックス...
-
vbsでのwebフォームへの入力制限?
-
【マクロ】変数を使った、文字...
-
以下のプログラムの実行結果は...
-
VBA レジストリの値の読み方に...
-
Vba セルの4辺について罫線が有...
-
エクセルのマクロについて教え...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
testファイル内にある複数のpng...
-
改行文字「vbCrLf」とは
-
エクセルVBA 検索結果を隣のシ...
-
vb.net(vs2022)のtextboxのデザ...
-
エクセルのVBAコードと数式につ...
-
【マクロ】切取りの場合、形式...
-
【ExcelVBA】5万行以上のデー...
-
ExcelVBAでパワポを操作したい
-
(EXCEL超初心者)EXCELの関数(ま...
-
エクセルの改行について
-
Excelマクロで使うVBAコードを...
-
ワードの図形にマクロを登録で...
-
【マクロ】変数を使った、文字...
-
VBAでFOR NEXT分を Application...
-
VBAの質問(Msgboxについて)です
-
エクセルのVBAコードについて教...
-
Excelマクロで使うVBAコードを...
-
Excelのマクロについて教えてく...
-
VBAの「To」という語句について
-
【マクロ】値を渡されたプロシ...
おすすめ情報
回答ありがとうございます。
元のマクロコードは
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),"""")"
以上となります。
よろしくお願いいたします。