作者:乔山办公网日期:
返回目录:excel表格制作
1楼的来方法有可取之处
不过不直接
如果你的公式是固定的.那么就用1楼的第1个: range("B14").Formula="=SUM(B1:F3)"
如果想用相对的,就是这样了源,
range("B14").FormulaR1C1="sum(R1C:R3C[4])"
说明:
RC分表代表行列,后面的数字代表了相应的行列号,如果没加" [ ]" ,就是绝对引用,如果加知了"[ ]"就是相对引用了. 方向由正负号控制
再举个例子:
比如: 当前单元格值总是等于它左边三个单元格的和道.那么公式为:
activecell.FormulaR1C1="=sum(RC[-3]:RC[-1])"
用VBA在Excel中写入公式的方法:
把提取字符的公式写入sheet2单元格e68a847a686964616f334
Sub aa()
Sheet2.Range("A1").Formula = "=left(sheet1!A1,5)"
End Sub
直接把结果写入sheet2单元格
sub aa()
sheet2.range("A1").value=left(sheet1.range("A1").value,5)
end sub
VBA主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件。它也可说是一种应用程式视觉化的 Basic 脚本。
扩展资料:
VBA的相关要求规定:
1、VBA是基于Visual Basic for Windows 发展而来的。与传统的宏语言不同,传统的宏语言不具有高级语言的特征,没有面向对象的程序设计概念和方法。而VBA 提供了面向对象的程序设计方法,提供了相当完整的程序设计语言。
2、VBA 易于学习掌握,可以使用宏记录器记录用户的各种操作并将其转换为VBA 程序代码。这样用户可以容易地将日常工作转换为VBA 程序代码,使工作自动化。
3、VB是独立的开发工具,不需要依附于任何其他应用程序,有自己完全独立的工作环境和编译、链接系统。VBA却没有自己独立的工作环境,必须依附于某一个主应用程序,VBA专门用于Office的各应用程序中,如Word、 Excel、 Access等。在 Access中,可以通过VBA编写模块来满足特定的需要。
参考资料来源:百度百科-VBA
VBA所调用的函数与excel里的格式是不一样的复。比如today() ,到VBA里引用则是DATE你要的代码如下:Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("A3") = Year(Date) - Year(Range("D3"))
End Sub
我这里假设A3为输出结果,D3为需要减制去的单元格,年龄和工龄原里是一样的。zdrange等同于 cells 效果。
在百VBA中要在公式中使用双引号的度话,需要成对出现知.
Range("B1").Formula = "=IF(OR(工作表道1!E6={""OT"",""N"",""R"",""V"",""SL"",""伤""},(xxx=39)),工作表1!E$5,IF(OR(工作表1!E6={""元"",""一"",""二"",""三"",""明"",""劳"",""端专"",""回"",""中"",""国"",""重"",""冬属""}),工作表1!E6&工作表1!E$5,""""))"