Excel VBA - 使用变量清除两个行号之间的列中的内容
Excel VBA - Clear contents in a column between two row numbers using variables
我有一个变量 'lastrow',它给出 sheet 中最后使用的行的行号。我还有变量 'lastrow2',它给出了 sheet.
上更高一行的行号
我需要清除AD列中的数据,从lastrow2开始到lastrow结束。
我该怎么做?
我已经尝试了以下我认为是正确但不完全正确的方法:
Worksheets("Received - Open").Range("AD & lastrow2":"AD & lastrow").ClearContents
您必须将 lastrow 和 lastrow2 视为变量,而不是常量字符串
Worksheets("Received - Open").Range("AD" & trim(str(lastrow2)) & ":AD" & trim(str(lastrow))).ClearContents
假设您的变量是数字数据类型,即 Long
。
Worksheets("Received - Open").Range("AD" & lastrow2 & ":AD" & lastrow).ClearContents
如果您将变量包含在引号内,它就会成为字符串的一部分。确保您的变量始终在这些场景中和字符串之外串联。
还有另一种方法:
Worksheets("Received - Open").Cells(lastrow2, "AD").Resize(lastrow - lastrow2 + 1).ClearContents
我有一个变量 'lastrow',它给出 sheet 中最后使用的行的行号。我还有变量 'lastrow2',它给出了 sheet.
上更高一行的行号我需要清除AD列中的数据,从lastrow2开始到lastrow结束。
我该怎么做?
我已经尝试了以下我认为是正确但不完全正确的方法:
Worksheets("Received - Open").Range("AD & lastrow2":"AD & lastrow").ClearContents
您必须将 lastrow 和 lastrow2 视为变量,而不是常量字符串
Worksheets("Received - Open").Range("AD" & trim(str(lastrow2)) & ":AD" & trim(str(lastrow))).ClearContents
假设您的变量是数字数据类型,即 Long
。
Worksheets("Received - Open").Range("AD" & lastrow2 & ":AD" & lastrow).ClearContents
如果您将变量包含在引号内,它就会成为字符串的一部分。确保您的变量始终在这些场景中和字符串之外串联。
还有另一种方法:
Worksheets("Received - Open").Cells(lastrow2, "AD").Resize(lastrow - lastrow2 + 1).ClearContents