[[20191101092704]] 『2枚目シート以降の全シートに関数を入力したい』(TTT) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『2枚目シート以降の全シートに関数を入力したい』(TTT)

お願いします。

 3枚目以降に180シートほど存在します。
 枚数は毎回変わり、シート名も毎回変わります。
 3枚目以降のシートの「P1セル」に「合計」の文字を入れたいのですが
 VBAでの処理を教えてください。

 2枚目シート名が「Sheet1」固定なのでこのようにしましたが動きません。
 Sub 合計関数入力()
 For i = n To Worksheets.Count
 If Worksheets(i).Name <> "Sheet1" Then

    Range("O1") = "全データ合計"
    Range("P1") = "=SUM(K:K)"
    Range("O2") = "C列あり合計"
    Range("P2") = "=P1-P3"

 End If
 Next i
 End Sub

< 使用 Excel:Excel2010、使用 OS:Windows10 >


 1枚目はいいのでしょうか?

 Option Explicit
 Sub 合計関数入力()
    Dim i As Long
    For i = n To Worksheets.Count
        With Worksheets(i)
            If .Name <> "Sheet1" Then
                .Range("O1") = "全データ合計"
                .Range("P1") = "=SUM(K:K)"
                .Range("O2") = "C列あり合計"
                .Range("P2") = "=P1-P3"
            End If
        End With
    Next i
 End Sub
(渡辺ひかる) 2019/11/01(金) 10:27

 渡辺ひかるさん、ありがとうございます。
 1枚目シートは無視したいです。
 2枚目以降のシートのみすべてのシートに関数などを入れたいです。
 1枚目シート名も固定で「全店コード」となります。
(TTT) 2019/11/01(金) 10:51

 すみません・・・
 2枚目以降のシートのみではなく、3枚目以降シートですね。

(TTT) 2019/11/01(金) 10:52


 For i = n To Worksheets.Count
 を
 For i = 3 To Worksheets.Count
 にして(そもそもnにはどこで何が設定されているのだろうか?)
 >If .Name <> "Sheet1" Then
 と対になっている
 >End If
 を無くしてはどうか?
(ねむねむ) 2019/11/01(金) 10:55

 n は見落としでした。

 1、2枚目が固定なら ねむねむさんのアドバイスでOKだと思います

(渡辺ひかる) 2019/11/01(金) 10:57


ねむねむさん、渡辺ひかるさんありがとうございました!
 無事完成しました!

 Sub 合計関数入力()
    Dim i As Long
     For i = 3 To Worksheets.Count
        With Worksheets(i)

                .Range("O1") = "全データ合計"
                .Range("P1") = "=SUM(K:K)"
                .Range("O2") = "C列あり合計"
                .Range("P2") = "=P1-P3"

        End With
    Next i
  End Sub
(TTT) 2019/11/01(金) 11:22

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.