繁体   English   中英

使用值复制和粘贴

[英]Copy and Paste Using Values

我有我希望是一个简单的问题。 我在下面有以下代码。 此代码复制 L 列并将其以值格式粘贴回 L 列。 这样我就可以摆脱公式。 我的 Countif Code 需要这个来计算 L 列中的月数(一月、二月、三月等)。 当我从宏屏幕运行此代码时,效果很好。 当我从按钮运行它时,粘贴的值只填充第一行和第二行,而 L 列中的其余行为空白。(有 600 多行)。 关于为什么我的代码在宏屏幕上工作但在使用按钮时不起作用的任何想法? 我想让它对我的同事来说是用户友好的。 谢谢你,马特

  LastRow = Sheets("HR Data Detail").Range("A1048576").End(xlUp).Row
  Worksheets("HR Data Detail").Range("L2:L" & LastRow).Copy
  Worksheets("HR Data Detail").Range("L2").PasteSpecial Paste:=xlPasteValue
  Application.CutCopyMode = False

代码包括一个更标准的最后一行指示器,并简单地将列设置为等于它自己的值(更快的方法)。 如果需要,您还可以在With块中轻松进行一些格式化


Sub RemoveFormula()

Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("HR Data Detail")

Dim LRow As Long
LRow = ws.Range("L" & ws.Rows.Count).End(xlUp).Row

With ws.Range("L2:L" & LRow)
    .Value = .Value
End With

End Sub
Sub RemoveFormula()
    With ThisWorkbook.Sheets("HR Data Detail") 'reference wanted sheet
        With .Range("L2", .Cells(.Rows.Count, "L").End(xlUp)) ' reference referenced sheet column L range from row 2 down to its last not empty value
            .Value = .Value ' remove formulas and leave values
        End With
    End With
End Sub

暂无
暂无

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

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