-1

我的公式位于单元格范围 B6:AH6 中。我想用相同的公式填充从 B7 开始的列。范围是动态的,所以我创建了一个函数来查找最后一行。

我的自动填充程序无法正常工作。我做了一些在线研究并将代码放在一起。但是,当我运行该过程时,它会填满而不是向下。我怎样才能让它填满。

这是我制定的程序:

首先是查找最后一行的函数:

Public Function GetLastRow(ByVal rngToCheck As Excel.Range) As Long

Dim rngLast As Excel.Range

rngLast = rngToCheck.Find(What:="*", SearchOrder:=Excel.XlSearchOrder.xlByRows, SearchDirection:=Excel.XlSearchDirection.xlPrevious)

    If rngLast Is Nothing Then
        GetLastRow = rngToCheck.Rows.Count
    Else
        GetLastRow = rngLast.Rows.Count
    End If

End Function

这是我自动填充范围的过程:

    Dim eeRefSheets As Excel.Worksheet
    Dim cellRange As Excel.Range

    For i As Long = 1 To 3 Step 1

        eeRefSheets = EmployeeSheets(i)

        With eeRefSheets
            cellRange = .Range("B6:H6")

            Dim lngLr As Long = GetLastRow(.Cells)

            cellRange.AutoFill(.Range("B6:H" & lngLr), Excel.XlAutoFillType.xlFillDefault)

        End With

    Next


End Sub
4

1 回答 1

1

我弄清楚了这个问题。我查找最后一行的功能不正确。修复了问题,数据填充了单元格。

    Dim eeRefSheets As Excel.Worksheet

For i As Long = 1 To 3 Step 1

    eeRefSheets = EmployeeSheets(i)

    With eeRefSheets
        Dim lngLr As Long

        lngLr = .Cells.Find(What:="*", SearchDirection:=Excel.XlSearchDirection.xlPrevious, SearchOrder:=Excel.XlSearchOrder.xlByRows).Row

        .Range("B6:AH6").AutoFill(.Range("B6:AH" & lngLr), Excel.XlAutoFillType.xlFillDefault)

    End With

Next i

结束子

于 2013-09-22T00:23:16.953 回答