簡體   English   中英

Excel VBA:如何將公式轉換為最后使用的列的值?

[英]Excel VBA: How to turn formulas into values for the last used column?

我試圖將所有公式轉換為工作表中最后使用的列的值。 (最后一欄每月更改)這是到目前為止的代碼:

Sub turnvalues2()
Set rng = Range(4, Columns.Count).End(xlToLeft).Column - 1
rng.Value = rng.Value
End Sub

Range(4, Columns.Count).End(xlToLeft).Column - 1返回一個數字而不是范圍。 您想要該數字的Columns()。

Sub turnvalues2()
Set rng = Columns(Cells(4, Columns.Count).End(xlToLeft).Column - 1)
rng.Value = rng.Value
End Sub

同樣, - 1將其移至使用的倒數第二列,您可能希望刪除該列以獲取使用的最后一列。

使用Range.Find的替代版本以獲取最后填充的列:

Sub tgr()

    Dim ws As Worksheet
    Dim rFound As Range

    Set ws = ActiveWorkbook.ActiveSheet
    Set rFound = ws.Cells.Find("*", ws.Range("A1"), xlFormulas, , xlByColumns, xlPrevious)

    If Not rFound Is Nothing Then rFound.EntireColumn.Value = rFound.EntireColumn.Value

End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM