【问题标题】:Excel VBA Formulas to populate until last row , not working for VERY LAST rowExcel VBA 公式填充到最后一行,不适用于最后一行
【发布时间】:2020-11-10 15:45:31
【问题描述】:

我有以下公式计算我的工作簿中的工作表。出于某种原因,最后一行没有填充公式。

知道这里发生了什么吗?除了所有 3 个公式的最后一行之外,它工作得很好,我不知道为什么。

Sub CLFormulas()
    
        With ThisWorkbook.Worksheets("CurrentList")
    
            .Cells(1, 18).Resize(.Cells(.Rows.Count, 1).End(xlUp).Row - 1).Formula = "=IFERROR(VLOOKUP(CurrentList!Q1,AF!A:A,1,FALSE),0)"
            End With
        With ThisWorkbook.Worksheets("CurrentList")
    
            .Cells(1, 19).Resize(.Cells(.Rows.Count, 1).End(xlUp).Row - 1).Formula = "=IF(AND(R1 = 0, L1 = ""Override""),""Yes"",""No"")"
            End With
            
                 With ThisWorkbook.Worksheets("CurrentList")
    
            .Cells(1, 20).Resize(.Cells(.Rows.Count, 1).End(xlUp).Row - 1).Formula = "=CONCATENATE(C1,F1,K1)"
            End With
    
  
End Sub

【问题讨论】:

  • 你为什么要减1?为什么最后一行找到了三次,而不是一次?
  • 为什么还要重复With ThisWorkbook.Worksheets("CurrentList")

标签: excel vba calculation


【解决方案1】:

你有 - 1 所以它永远不会做底行

【讨论】:

  • 你们是对的 .. 只需消除 -1 即可解决问题 SMH 哈哈 .. 为了找到 3 次行,我需要做一些研究,看看如何构建语法,但我什至没有考虑过。伟大的呼吁!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-05
  • 2020-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多