
下記マクロを短いコード(一つのコード)に変更する方法を教えてください。
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で質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel VBA セルの値がおかしいです
-
VBA セル間のリンク修正につい...
-
VBAでCOPYを繰り返すと、処理が...
-
VBAから書き込んだ条件付き初期...
-
WindowsのOutlook を VBA から...
-
マクロの記録を使用したマクロ...
-
vbsでのwebフォームへの入力制限?
-
ダブルクリックで貼り付けた画...
-
エクエルのVBAコードについて教...
-
ExcelのVBAコードについて教え...
-
vbs ブック共有を解除
-
VBAでFOR NEXT分を Application...
-
Excelのマクロについて教えてく...
-
Vba WorkBooks.Openについて教...
-
Vba 型が一致しません(エラー1...
-
【ExcelVBA】5万行以上のデー...
-
VBAでセルの書式を変えずに文字...
-
[Excel VBA]特定の条件で文字を...
-
【VBA】値を変更しながら連続で...
-
vba textboxへの入力について教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA セル間のリンク修正につい...
-
VBAでCOPYを繰り返すと、処理が...
-
vba textboxへの入力について教...
-
【マクロ】シートの変数へ入れ...
-
【マクロ】並び替えの範囲が、...
-
Vba Array関数について教えてく...
-
Vba セルの4辺について罫線が有...
-
【マクロ】開いているブックの...
-
複数のExcelファイルをマージす...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【ExcelVBA】5万行以上のデー...
-
vbsでのwebフォームへの入力制限?
-
[VB.net] ボタン(Flat)のEnable...
-
Excelのマクロについて教えてく...
-
【ExcelVBA】値を変更しながら...
-
改行文字「vbCrLf」とは
-
算術演算子「¥」の意味について
-
VBAでセルの書式を変えずに文字...
-
VBAの「To」という語句について
-
VB.net 文字列から日付型へ変更...
おすすめ情報
回答ありがとうございました。
もう少し詳しく教えて頂けますでしょうか。
よろしくお願いいたします。
回答ありがとうございます。
申し訳ございません。
全てが「ROUNDUP」の間違えです。
よろしくお願いいたします。