下記マクロを短いコード(一つのコード)に変更する方法を教えてください。
Sub 採光面積()
Sheets("Table 2").Select
Range("$AC$8").Formula = "=IFERROR(ROUNDUP($Y$8*数式! $C$1,2),"""")"
Range("$AC$14").Formula = "=IFERROR(round($Y$14*数式! $C$2,2),"""")"
Range("$AC$20").Formula = "=IFERROR(round($Y$20*数式! $C$3,2),"""")"
Range("$AC$26").Formula = "=IFERROR(round($Y$26*数式! $C$4,2),"""")"
Range("$AC$32").Formula = "=IFERROR(round($Y$32*数式! $C$5,2),"""")"
Range("$AC$38").Formula = "=IFERROR(round($Y$38*数式! $C$6,2),"""")"
Range("$AC$44").Formula = "=IFERROR(round($Y$44*数式! $C$7,2),"""")"
Range("$AC$50").Formula = "=IFERROR(round($Y$50*数式! $C$8,2),"""")"
Range("$AC$56").Formula = "=IFERROR(round($Y$56*数式! $C$9,2),"""")"
Range("$AC$62").Formula = "=IFERROR(round($Y$62*数式! $C$10,2),"""")"
Range("$AC$68").Formula = "=IFERROR(round($Y$68*数式! $C$11,2),"""")"
Range("$AC$74").Formula = "=IFERROR(round($Y$74*数式! $C$12,2),"""")"
Range("$AC$80").Formula = "=IFERROR(round($Y$80*数式! $C$13,2),"""")"
Range("$AC$86").Formula = "=IFERROR(round($Y$86*数式! $C$14,2),"""")"
Range("$AC$92").Formula = "=IFERROR(round($Y$92*数式! $C$15,2),"""")"
Range("$AC$98").Formula = "=IFERROR(round($Y$98*数式! $C$16,2),"""")"
Range("$AC$104").Formula = "=IFERROR(round($Y$104*数式! $C$17,2),"""")"
Range("$AC$110").Formula = "=IFERROR(round($Y$110*数式! $C$18,2),"""")"
Range("$AC$116").Formula = "=IFERROR(round($Y$116*数式! $C$19,2),"""")"
Range("$AC$122").Formula = "=IFERROR(round($Y$122*数式! $C$20,2),"""")"
Sheets("Table 2").Select
Range("X2").Select
End Sub
以上となります。
宜しくお願い致します。
No.4ベストアンサー
- 回答日時:
以下のようにしてください。
Sub 採光面積()
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 = "$AC$" & r
str2 = "=IFERROR(ROUNDUP($Y$" & r & "*数式! $C$" & i & ",2),"""")"
Range(str1) = str2
Next
Range("X2").Select
End Sub
No.3
- 回答日時:
$AC$8 のみがROUNDUPした結果を格納しています。
$AC$8以外の行は、roundになっています。
これで、間違いないでしょうか。
それとも、どちらかが誤っているのでしょうか。
No.2
- 回答日時:
数式を入れる20行は、最初の
Range("$AC$8").Formula = "=IFERROR(ROUNDUP($Y$8*数式! $C$1,2),"""")"
の $8 と $1 を変化させているだけですから、No.1のForループで回せば、For~Nextの間は1行で済むことになります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
- Excel(エクセル) Formulaプロパティーを使ってセルに数式を組んだのですが簡潔にしたい。 3 2022/08/21 20:51
- Excel(エクセル) マクロを簡潔にしたい 6 2022/09/16 10:37
- Visual Basic(VBA) 関数を最終行までコピー 3 2022/09/04 11:05
- Excel(エクセル) 【マクロ】 IFERROR関数をマクロを利用し、エクセルへ入力しようとすると構文エラーとなる 1 2024/06/09 07:55
- Visual Basic(VBA) 最終列の右へSUM関数を作成するため下記コードを実行しましたが、最終列「10月28日」が上書きされて 3 2022/12/05 20:32
- Excel(エクセル) 【マクロ】セルに関数を入れる場合、列を追加した後に実行すると【文字列】になってしまう 1 2024/06/09 16:41
- Visual Basic(VBA) エクセルのマクロとシートの保護について教えてください。 1 2022/10/18 08:36
- その他(Microsoft Office) Excel 2列の値を返す数式についてです 1 2022/11/23 22:59
- Excel(エクセル) 列の最終行に新たに入力されたらその値を自動参照 1 2023/01/21 09:59
関連するカテゴリから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 このコードでうまく...
-
【マクロ】シートの変数へ入れ...
-
ワードの図形にマクロを登録で...
-
算術演算子「¥」の意味について
おすすめ情報


回答ありがとうございました。
もう少し詳しく教えて頂けますでしょうか。
よろしくお願いいたします。
回答ありがとうございます。
申し訳ございません。
全てが「ROUNDUP」の間違えです。
よろしくお願いいたします。