Excel VBA中,怎么给单元格赋值为复杂公式

如题所述

Sub 给单元格输入公式()
With Sheets("st1")
R_zj = WorksheetFunction.Match("总计*", .[B:B], 0) '找到“总计”的行号
.Cells(R_zj, 13).Formula = "=SUMIF($C$7:$C$" & R_zj - 1 & ",""*合计*"",$M$7:$M$" & R_zj - 1 & ")" '填入总计公式
For i = 7 To R_zj - 1
.Cells(i, 13).Formula = "=RC[-1]*RC[-4]" '填入非合计公式
If .Cells(i, 5) Like "小计*" Then '填入小计公式
R_xj = .Cells(i, 4).MergeArea.Rows.Count
.Cells(i, 13).Formula = "=sum(R[" & 1 - R_xj & "]C:R[-1]C)"
End If
If .Cells(i, 3) Like "合计*" Then '填入合计公式
R_hj = .Cells(i, 2).MergeArea.Rows.Count
If .Cells(i - 1, 5) Like "小计*" Then xj = 2 Else xj = 1 '判断是否有小计
.Cells(i, 13).Formula = "=sum(R[" & 1 - R_hj & "]C:R[-1]C)/" & xj
End If
Next i
End With
End Sub
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-12-12
可以直接输入公式啊
比如A1加入公式
range("A1")="countif(A:A,A1)"本回答被网友采纳
第2个回答  2018-05-25
例如,在A1输入公式合计G1:G3:
Cells(1, 1).Formula = "=SUM(G1:G3)"

Excel VBA中,怎么给单元格赋值为复杂公式
Sub 给单元格输入公式()With Sheets("st1")R_zj = WorksheetFunction.Match("总计*", .[B:B], 0) '找到“总计”的行号 .Cells(R_zj, 13).Formula = "=SUMIF($C$7:$C$" & R_zj - 1 & ",""*合计*"",$M$7:$M$" & R_zj - 1 & ")" '填入总计公式 For i = 7 To...

VBA 给EXCEL单元格赋值问题,高深!!!
打开你的Excel文件,按“Alt+F11”打开VBA编辑窗口,然后在左侧对应的Sheet上双击,右侧空白处粘贴下面的代码。关闭VBA窗口。然后按“Alt+F8”打开宏窗口,选择刚插入的宏,点击“执行”。Sub wj()Dim i, r As Longr = Cells(Rows.Count, "A").End(xlUp).RowFor i = 2 To r GetObject (...

用VBA编码如何成功地将很长的复杂的公式赋值给单元格?
其实就是含有双引号时的书写问题,比如要在单元格中写入公式:=IF(A1>0,"正数","负数")换成VBA语句就是:Range("A1").Formula = "=if(a1>0,""正数"",""负数"")",其中""中的第一个"为转义字符,告诉Excel第二个引号作为文本。那么题中的公式可写为:"=IF(A5=""",""",IF(MID(A5...

如何在VBA中给EXCEL中的单元格设置公式
先手动建立一个引用公式,然后在VBA中替换到以下引号中,公式中比较麻烦的是变量要用 & 来连接到公式中, 假设i是变量的话 Cells(i, 1).Formula = "='[Samll tools for validation test.xls]sheet5'!$E$125"[]之间为excel文件名称(如果是引用不同文件的数据)sheet5位表格名称 Cells(i,1)....

用vba给Excel单元格赋值
1、打开一个Excel的文件,鼠标左键单击【开发工具】菜单标签。2、接着,在表格中输入简单的表格,比如水果表格。3、然后在VBA控件下拉菜单中,选择按钮控件。4、接着在表格中绘制出按钮控件,并修改控件名称。5、然后,鼠标左键单击【查看代码】按钮。6、接着,在代码窗口中输入给单元格的赋值语句。7...

excelVBA代码怎么在单元格中输入数组公式
上面演示了VBA代码在单个单元格中输入数组公式,如果要在多个单元格中输入数组公式呢?如下面的代码所示:Sheet3.Range(“B1:B6”).FormulaArray= “=A1:A6=”” Excel”””判断工作表Sheet3的单元格区域A1:A6中的值是否为“ Excel”,如果是则返回TRUE,否则为FALSE。运行代码后的结果如下所示。如...

用vba给Excel单元格赋值
1.打开Excel 2010。2.点击开发工具-宏。3.命名-然后点击创建。4.复制以下语句。Sheet1.Name = "对sheet1表名赋值"。Sheet1.Range("a1")= "对sheet1的a1单元格赋值"。粘贴到下图光标处。5.了解语句含义,见图。6.了解语句含义,见图。7.改成自己需要赋的值,点击运行,然后返回excel表查看是否...

EXCEL中,如何用VBA向单元格赋值?
sheet1.cells(2,1).value="祝你快乐!",也可以:Worksheets("sheet1").Range("B1").value="祝你快乐!",其中sheet是你所在的表格,sheet1是第一张表

在excel的vba中如何给单元格输入公式
你可以用Excel录制VBA的宏 他的解决方案是用RC表达式代表单元格 然后给单元格复制=if(H2=C2,"","数据不一致") 。具体RC表达式怎么拼写 忘记了

VBA代码方案之十八:如何利用VBA在单元格中录入公式
首先,通过Formula属性可以将公式写入特定范围,例如:vba Sub MyrngFormula()Sheet1.Range("C2:C10").Formula = "=SUM(A2+B2)"End Sub 这段代码等同于在C2单元格输入公式=SUM(A2+B2),然后自动应用到C2到C10的其他单元格。其次,使用FormulaR1C1属性,适合于R1C1-样式的公式输入,比如:vba Sub...

相似回答