用VBA在Excel中写入公式的方法:
把提取字符的公式写入sheet2单元格
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
这个公式的意思是:取值,取值的位置是 账目9月!C$22 这个单元格,再向下移动0格,向右移动ROW(A1)*3格。ROW(A1)的意思是A1的行号,这里是第一行即1.当然OFFSET公式只是只是针对以上才是这样解释,具体请看下。另外需要注意的是:C$22这个单元格,已经有部分锁定了,复制公式的时候要知道他的变化。
语法
OFFSET(reference,rows,cols,height,width)
Reference 作为偏移量参照系的引用区域。Reference
必须为对单元格或相连单元格区域的引用;否则,函数 OFFSET 返回错误值 #VALUE!。
Rows 相对于偏移量参照系的左上角单元格,上(下)偏移的行数。如果使用 5 作为参数
Rows,则说明目标引用区域的左上角单元格比 reference 低 5 行。行数可为正数(代表在起始引用的下方)或负数(代表在起始引用的上方)。
Cols 相对于偏移量参照系的左上角单元格,左(右)偏移的列数。如果使用 5 作为参数
Cols,则说明目标引用区域的左上角的单元格比 reference 靠右 5 列。列数可为正数(代表在起始引用的右边)或负数(代表在起始引用的左边)。
Height 高度,即所要返回的引用区域的行数。Height 必须为正数。
Width 宽度,即所要返回的引用区域的列数。Width 必须为正数。
说明
如果行数和列数偏移量超出工作表边缘,函数 OFFSET 返回错误值 #REF!。
如果省略 height 或 width,则假设其高度或宽度与 reference 相同。
函数 OFFSET 实际上并不移动任何单元格或更改选定区域,它只是返回一个引用。函数 OFFSET 可用于任何需要将引用作为参数的函数。例如,公式
SUM(OFFSET(C2,1,2,3,1)) 将计算比单元格 C2 靠下 1 行并靠右 2 列的 3 行 1 列的区域的总值。
示例
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
如何复制示例
创建一个空白工作簿或工作表。
选择“帮助”主题中的示例。
注释不要选择行或列标题。
从“帮助”中选择示例
按 Ctrl+C。
在工作表中,选择单元格 A1,然后按 Ctrl+V。
要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
1
2
3
4
A
B
公式
说明(结果)
=OFFSET(C3,2,3,1,1)
显示单元格 F5 中的值 (0)
=SUM(OFFSET(C3:E5,-1,0,3,3))
对数据区域 C2:E4 求和 (0)
=OFFSET(C3:E5,0,-3,3,3)
返回错误值 #REF!,因为引用区域不在工作表中
软件版本:Office2007
举例说明如下:
1.C1中已经包含了公式,利用VBA再在公式基础上插入对A1:A3区域求和的公式:
2.Alt+F11,输入代码如下:
3.F5执行代码,返回Excel,得到结果如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)