-5

数行のデータと空白のセルを含む列があります。

空白のセルになるまで列の行を上に数え、 を使用して数を合計する方法が必要VBAです。何か案は?

4

2 に答える 2

1

私はあなたが何を求めているのか100%確信が持てません。「数値を合計する」と言いますが、合計する数値がカウントされた行数であるか、見つかったセルの値を合計するかを指定しません。

-編集-

これを試してみてください: これは一番下の行から始まり、空白セルが見つかるまで上向きにカウントされます。空白セルが見つかると、最後の空白セルと現在の空白セルの間のセルが合計されます。

-編集2-

最初の行も合計されるように、列ヘッダーの下の行に挿入を追加しました。

Sub CountUp()
    Dim TotalRows As Long
    Dim TotalCols As Long
    Dim Col As Long
    Dim i As Long
    Dim n As Long

    Rows(2).Insert Shift:=xlDown
    TotalRows = ActiveSheet.UsedRange.Rows.Count
    TotalCols = ActiveSheet.UsedRange.Columns.Count
    'Assumes Data you want to sum is in the first column
    Col = 1

    Cells(TotalRows, Col).Select
    For i = TotalRows To 1 Step -1
        If Cells(i, Col).Value <> "" Then
            n = n + 1
        Else
            Cells(i, Col).Formula = "=SUM(" & Cells(i + 1, Col).Address(False, False) & ":" & Cells(i + n, Col).Address(False, False) & ")"
            n = 0
        End If
    Next
End Sub
于 2013-02-19T16:23:30.620 に答える
0

列Fを列として想定し、番号があります。以下のコードを試してください。

Sub sumAndcount()
    Dim recCount As Long
    Dim recSum As Long

    Range("A65000").Value = "=COUNT(F:F)"
    recCount = Range("A65000").Value

    Range("A65000").Value = "=SUM(F:F)"
    recCount = Range("A65000").Value
End Sub
于 2013-02-19T12:40:08.137 に答える