Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在excel中定义变量字符串范围_Excel_Vba - Fatal编程技术网

如何在excel中定义变量字符串范围

如何在excel中定义变量字符串范围,excel,vba,Excel,Vba,我需要计算变量范围内的列数,并使用最后一列的地址构成定义范围的一部分。一旦我定义了范围,我就想输入一个公式。有人能帮忙吗 范例 Dim lastcolumn as string Lastcolumn = sheet("test").range("a1").end(xltoright).column Sheets("test").range("b1:" & lastcolumn).select Selection.formula = "myformula" 该列返回的是数字而不是单

我需要计算变量范围内的列数,并使用最后一列的地址构成定义范围的一部分。一旦我定义了范围,我就想输入一个公式。有人能帮忙吗

范例

Dim lastcolumn as string

Lastcolumn = sheet("test").range("a1").end(xltoright).column

Sheets("test").range("b1:" & lastcolumn).select

Selection.formula = "myformula"

该列返回的是数字而不是单元格,因此需要提供更多信息。您需要使用
单元格()

还应避免使用“选择”,因为它会减慢代码的速度:

Dim lastcolumn as Long

Lastcolumn = sheets("test").range("a1").end(xltoright).column

Sheets("test").range("b1",Sheets("test").Cells(1,lastcolumn)).formula ="myformula"

该列返回的是数字而不是单元格,因此需要提供更多信息。您需要使用
单元格()

还应避免使用“选择”,因为它会减慢代码的速度:

Dim lastcolumn as Long

Lastcolumn = sheets("test").range("a1").end(xltoright).column

Sheets("test").range("b1",Sheets("test").Cells(1,lastcolumn)).formula ="myformula"

您可以摆脱
lastColumn
计算(以及担心其类型…)


您可以摆脱
lastColumn
计算(以及担心其类型…)


类似于
sheet(“test”).range(“a1”).end(xltoright)。formula=“xyz”
的内容应该可以做到这一点,我认为最后一列应该是一个整数。或者可能是
cells(sheet(“test”).range(“a1”).end(xltoRight),1)。formula
类似于
sheet(“test”).range(“a1”).end(xltoRight)。formula=“xyz”
应该这样做,我认为最后一列应该是一个整数。或者可能是
单元格(表(“测试”)。范围(“a1”)。结束(xltoRight),1)。公式
比我快-回答得好我只是想将lastcolumn更改为整数。为什么不声明并将它作为整数处理呢?(顺便说一句,这是Sheets,而不是Sheet)。@Jeeped在另一部分被绑住了,没有注意到它是一个字符串,不是整数/长。@Jeeped这就是我通过尝试像你一样,直接在答案空间中而不是通过VBE.LOL更正代码而得到的结果。几乎每次我尝试在没有VBE的情况下更正代码时,我都会被a$$咬到!你没有关注我的帖子的修改历史记录!(顺便说一句,明天是重要的一天……祈祷吧)打败我吧-回答得好我只是想将lastcolumn更改为整数。为什么不声明并将它作为整数处理呢?(顺便说一句,这是Sheets,而不是Sheet)。@Jeeped在另一部分被绑住了,没有注意到它是一个字符串,不是整数/长。@Jeeped这就是我通过尝试像你一样,直接在答案空间中而不是通过VBE.LOL更正代码而得到的结果。几乎每次我尝试在没有VBE的情况下更正代码时,我都会被a$$咬到!你没有关注我的帖子的修改历史记录!(顺便说一句,明天是大日子……祈祷吧)