【问题标题】:How to find last row and paste the formula to the last cell of column如何找到最后一行并将公式粘贴到列的最后一个单元格
【发布时间】:2020-12-27 00:05:22
【问题描述】:

需要帮助来查找列中的最后一行并将 H2 公式粘贴到最后一列,直到数据出现在最后一行。 在下面的代码中使用但没有成功。代码还会在 H 列中自动添加列名 Mid value。例如,如果单元格 H2 包含公式 mid(G2,20,2) 将给出 P2 值。并且该公式应该复制到该列的最后使用的行并粘贴公式。

请根据您的方便更改源文件的目的地。

如果你能帮上忙,我会很高兴的。

谢谢 问候, 阿米特·辛格

代码截断:-

Sub Timecalculation()

Dim wb As Workbook
Dim wks As Worksheet
Dim objList As ListObject
Dim LastRow As Long
Dim sht As Worksheet
    
Set wb = Workbooks.Open("C:\Users\611892636\OneDrive - BT Plc\Desktop\Nestle JML\Mansi Work\Test\SourceData.xlsx")
wb.Sheets("Data").Activate
For Each wks In ActiveWorkbook.Worksheets
    For Each objList In wks.ListObjects
        objList.Unlist
     Next objList
Next wks
Range("H1").Select

'adding column for Mid Value
Set sht = ActiveSheet
Columns("H:H").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("H1").Value = "Mid Value"
ActiveSheet.Range("H2").Select
ActiveCell.FormulaR1C1 = "=Mid(RC[-1],20,2)"
Selection.Copy
Range("H3").Select
LastRow = Range("H" & Rows.Count).End(xlUp).Row
Range("H2:H" & LastRow).Formula = "=&H2"
Range("I1").Select

ActiveSheet.AutoFilterMode = False

'Adding column for time calculate
Columns("I:I").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("I1").Value = "Time Cal"
Range("J1").Select

'Adding column for time in Minutes
Columns("J:J").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("J1").Value = "Time In Minutes"
Application.DisplayAlerts = False


End Sub

【问题讨论】:

    标签: excel vba excel-formula


    【解决方案1】:

    通常你可以使用这段代码找到最后一个:

    Range("H2").End(xlDown)
    

    祝你好运

    在 Amit 发表评论后编辑

    显然这似乎是解决方案:

    Range("H2:H" & Cells(Rows.Count, 1).End(xlUp).Row).Formula = "=Mid(RC[-1],20,2)"
    

    【讨论】:

    • 感谢 Dominique 的帮助,但我仍然面临以下代码中的问题:- LastRow = Range("H3").End(xlDown).Row Range("H3:H" & LastRow) .Formula = "=&H2+&H3" 因为无法将公式从 H2 粘贴到 H 列的最后一个单元格(从 H3 开始)。
    • 得到了答案 Range("H2:H" & Cells(Rows.Count, 1).End(xlUp).Row).Formula = "=Mid(RC[-1],20, 2)" 它将填充公式直到使用行的最后一列。感谢您的帮助。
    • @Amit:如果我的回答对你有帮助,请点赞(这是本网站的工作方式)。
    猜你喜欢
    • 2020-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-27
    相关资源
    最近更新 更多