繁体   English   中英

自动填充到最后一行

[英]Autofilling until the last row

我一直在自动填充使用Q10:Q57范围的报告。 但是,我意识到由于它每天运行,因此很有可能范围会更高或更低。 我目前有

Range("Q10").Select
Selection.AutoFill Destination:=Range("Q10:Q57"), Type:=xlFillDefault
Range("Q10:Q57").Select
Calculate

有没有一种方法可以自动填充到最后一行而不是Q57? 我在想也许要用excel下来吗? 你怎么看? 谢谢。

创建一个函数以查找最后一行:

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

现在创建一个调用该函数的过程

Sub findAndFillLastRow()

  Dim yourSheet As Excel.Worksheet

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

        .Range("Q10:Q").AutoFill(.Range("Q10:Q" & lngLr), Excel.XlAutoFillType.xlFillDefault)

    End With

End Sub

那应该工作。

试试这个

Dim rng_AutoFill As Range
Set rng_AutoFill = Range( _
                    Range("Q10"), _
                    Range("Q1000000").End(xlUp))
Range("Q10").AutoFill _
    Destination:=rng_AutoFill, _
    Type:=xlFillDefault
Calculate

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM