gpt4 book ai didi

vba - 如何在不选择的情况下更改要删除的范围

转载 作者:行者123 更新时间:2023-12-04 20:12:31 24 4
gpt4 key购买 nike

我尝试了所有可以在没有选择部分的情况下重写此代码的方法。

Worksheets(3).Activate
ActiveSheet.ListObjects(ListName).Range.Select 'Listname is a string-variable
Range(ActiveCell.Offset(1), ActiveCell.Offset(-1)).Select
Selection.Delete Shift:=xlUp
Worksheets(2).Activate
MsgBox "Set-creation was canceled.", vbCritical

最佳答案

Worksheets(3).Activate
ActiveSheet.ListObjects(ListName).Range.Select 'Listname is a string-variable
Range(ActiveCell.Offset(1), ActiveCell.Offset(-1)).Select
Selection.Delete Shift:=xlUp
Worksheets(2).Activate
MsgBox "Set-creation was canceled.", vbCritical

可以重写为:
With Sheets(3)
.Range(.ListObjects(ListName).Range.Offset(1), .ListObjects(ListName).Range.Offset(-1)).Delete xlUp
End With
Sheets(2).Activate
MsgBox "Set-creation was canceled.", vbCritical

你不需要 .Select 中的任何内容尤其是在处理 Range 时object - 它的所有属性和方法都可以直接访问。

代替:
Range("A1").Select
Selection.Value = "Test"

考虑:
Range("A1").Value = "Test"

这是更好的编码,并且在较长的过程中会运行得更快。另一个优点是您不必跟踪 Selection 的内容。是在调试或改进代码时。

关于vba - 如何在不选择的情况下更改要删除的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34997784/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com