Excel 将图纸的列仅转换为值(删除公式)
你能帮我用下面的公式吗?它给出了对象定义或应用程序定义的错误。非常感谢Excel 将图纸的列仅转换为值(删除公式),excel,vba,Excel,Vba,你能帮我用下面的公式吗?它给出了对象定义或应用程序定义的错误。非常感谢 Sub cellstovalues() Sheets("Parsing").Select Columns("B:B").Select Selection.Copy Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End
Sub cellstovalues()
Sheets("Parsing").Select
Columns("B:B").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
您的代码在选择整个列B时出现问题。请尝试使用此选项。这将找到列中最后使用的单元格,然后复制并粘贴,将公式转换为所需的值
Sub cellstovalues()
Dim ws As Worksheet
Dim LastRow As Integer
Dim rng As Range
Set ws = ThisWorkbook.Sheets("Parsing")
With ws
LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row
Set rng = .Range(.Cells(1, "B"), .Cells(LastRow, "B"))
End With
rng.Copy
rng.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
或者,您可以简单地将值指定给范围的Value2或Value属性:
Sub cellstovalues()
With Sheets("Parsing")
With Intersect(.Range("B:B"), .UsedRange)
.Value2 = .Value2
End With
End With
End Sub
或针对特定范围:
Sub cellstovalues()
With Sheets("Parsing").Range("B1:C10")
.Value2 = .Value2
End With
End Sub