経費を追跡するための新しい財務スプレッドシートを作成したいと思います。経費明細書は、数式を入力するためのスプレッドシートを事前に生成できないときに作成されるためです。他のシートの合計を追加した要約シートがあり、現在、月末に手動で数式を作成しています。複数のシートを自動的に合計し、作成時に新しいシートを合計に追加する方法はありますか?
これは標準のExcelを使用して可能ですか、それともVBAを使用する必要がありますか?
複数のシートに同じセルを追加する方法をすでに知っています(参照: Excel-複数のシートにまたがる数式? )
このvbaスクリプトは、私が実行しようとしていることへの道の一部ですが、正確には実行したいことではありません: Excel-新しいタブが作成されたときにセルからデータを自動的にインポートします
P.S.私はVBAを知りませんが、学びたいと思っています。私はC/Pythonに慣れています。
たとえば、現在の合計がSheet1!A1
にあるとします。そうです、他のシートからすべての合計を取得して合計する実行可能なマクロを作成します。
各シートの合計がセルA10
にあると仮定しましょう-
Sub updatethesum()
Dim ws As Worksheet
Dim i As Double
i = 0
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> "Sheet1" Then
i = i + ws.Range("A10")
End If
Next
Sheets("Sheet1").Range("A1") = i
End Sub
誰かがA10
に数字の代わりに文字を入れるのではないかと心配している場合は、次のように入力を制限できます-
Sub updatethesum()
Dim ws As Worksheet
Dim i As Double
i = 0
Dim bletter As Boolean
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> "Sheet1" Then
bletter = IsNumeric(ws.Range("A10").Value)
If bletter = True Then
i = i + ws.Range("A10")
End If
End If
Next
Sheets("Sheet1").Range("A1") = i
End Sub