Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.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
函数和vba_Vba_Excel - Fatal编程技术网

函数和vba

函数和vba,vba,excel,Vba,Excel,我想使用不同列中不同单元格的函数SUM,我使用了这种语法,但它不起作用,它总是返回0: Sub test(AC As String) Sheets("Feuil4").Activate Range("A1").Formula = "=SUM(Feuil2!AC10, -Feuil2!AC11)" End Sub Sub TEST() Call test("B") End Sub 我也试过:Range(“A1”).Formula=“=SUM(Feuil2!AC&10,

我想使用不同列中不同单元格的函数
SUM
,我使用了这种语法,但它不起作用,它总是返回
0

Sub test(AC As String)
    Sheets("Feuil4").Activate
    Range("A1").Formula = "=SUM(Feuil2!AC10, -Feuil2!AC11)"
End Sub

Sub TEST()
    Call test("B")
End Sub 
我也试过:
Range(“A1”).Formula=“=SUM(Feuil2!AC&10,-Feuil2!AC&11)”
它也不起作用。

这个公式

Range("A1").Formula = "=SUM(Feuil2!AC10, -Feuil2!AC11)"
从Feuil2单元格AC10中减去表Feuil2单元格AC11

如果要将
AC
用作列名变量,则必须使用

Sub WriteSumFormula(SumColumn As String)
    Sheets("Feuil4").Range("A1").Formula = "=SUM(Feuil2!" & SumColumn & "10, -Feuil2!" & SumColumn & "11)"
End Sub    
还可以使用描述性变量和函数名来简化工作,并获得更好的可维护代码。您不能命名两个不同的sub
TEST
。名称必须是唯一的

那么这个测试呢,

Sub TestWriteSumFormula()
    Call WriteSumFormula("B")
End Sub

应将公式
=SUM(Feuil2!B10,-Feuil2!B11)
写入单元格A1。

以下内容也应适用,请记住我重命名了您的一个SUB,因为它们不能同时命名为“TEST”:


以下主题将帮助您:
Sub TEST(AC As String)
    Sheets("Feuil4").Range("A1").Formula = "=SUM(Feuil2!" & AC & "10, -Feuil2!" & AC & "11)"
End Sub

Sub TESTS() 'renamed this
    Call TEST("B")
End Sub