vb编程excel表格怎么用
发布时间:2025-08-17 | 来源:互联网转载和整理
1.用vb怎么做excel表格
EXCEL函数公式直接操作的是数组,完全可以达到循环的目的,可以理解为是封装了的循环函数,下面举两个例子来说明:
问题1: 条件求和 公式SUMIF,求序号大于3的数据的和。
a. 用函数公式就非常简单在C2单元格输入=SUMIF(A2:A6,">3",B2:B6)就能行到结果42
b. 如果用VBA就复杂多了,代码如下:
set sh = ActivateSheetsum = 0 # 保存求和的结果For i = 2 to 6 If sh.cells(i,1)>3 Then sum = sum + sh.cells(i,2) End ifNext i
问题2:条件查找公式VLOOKUP,依次把B列的名字在A列中查找,如果找到就标记为TRUE,如果没有找到就标记为FALSE.
a. 函数就非常简单了,只需要在C2输入公式=IF(ISERROR(VLOOKUP(B2,A:A,1,FALSE)),FALSE,TRUE),然后下拉下C4
b. VBA代码就比较复杂了,如下:
set sh = ActivateSheetFor i=2 to 4 isexist = FALSE For j=2 to 4 If sh.cells(i,2) = sh.cells(j,1) Then isexist = TRUE End If Next j sh.cells(i,3) = isexistNext i
2.Excel中的VB控件如何运用?
使用表格数据(格式):
Msgbox Sheet1.Range("A1").Value
其中,Sheet1可以替换为Sheets("工作簿名称")
Range("A1")可以替换为Cells(1,1) '方便循环
Value的意思是引用单元格的最终结果。单元格有公式的时候必须用这个来引用结果。
如果用 FormulaR1C1 或者 Formula 的话会出来这个单元格的公式(没公式的话效果一样)。。。也挺有意思的。可以试试看。
赋值要用FormulaR1C1或者Formula,value是只读的。
3.如何运用VB与EXCEL
1.Alt+F11,将你设计的计算器VB代码输入 2.Application.Selection是你当前选中的Excel单元格 3.假设计算结果保存在TextBox1中,则Application.Selection=TextBox1.Text 下面是个简单示例(只用了1、2、3、+、=、CE几个键,按“=”后计算结果自动保存到选定的单元格内) Dim A As Integer Private Sub CommandButton1_Click() TextBox1.Text = TextBox1.Text + "2" End Sub Private Sub CommandButton2_Click() A = A + Val(TextBox1.Text) TextBox1.Text = "" End Sub Private Sub CommandButton3_Click() TextBox1.Text = A + Val(TextBox1.Text) Application.Selection = TextBox1.Text End Sub Private Sub CommandButton4_Click() TextBox1.Text = TextBox1.Text + "3" End Sub Private Sub CommandButton5_Click() TextBox1.Text = TextBox1.Text + "1" End Sub Private Sub CommandButton6_Click() A = 0 TextBox1.Text = "" End Sub 。
4.用VB制作excel表格
添加引用 Microsoft Excel 12.0 Object Library (视你的office版本不同有所差异)
然后就可以用这个来编程啦
Dim xlapp As Excel.Application '代表excel程序
Dim wkBook As Excel.Workbook '代表excelworkbook(也就是excel工作簿文件 .xls .xlsx)
Dim wkSheet As Excel.Worksheet '代表excel的工作页
xlapp.Application.EnableEvents = False '禁止宏等提示的运行
Set wkBook = xlapp.Workbooks.Open(ExcelFileName)'wkBook对象,把ExcelFileName替换为你的真实文件 比如 app.path & "\" & "百家姓.xls"
Set wkSheet = wkBook.Worksheets(1) '选中某个sheet用工作页名字(Sheet1,Sheet2。) or 序号
5.vb如何调用excel函数
1. 单元格地址,在VBA公式中,应该用:range("f1:f400")例:=sum(f1:f400)写成 =application.sum(range("f1:f400")) worksheetfunction是可以省略的。
初学时不省最好,因为有些函数在VBA中是不可用的,不省它,就会提示你有哪些函数可用。offset是表示区域的。
在VBA写公式的时候,可以用resize来代替另:以上功能,建议不要用工作表公式来写。2. 在VB中要想调用Excel,需要打开VB编程环境“工程”菜单中的“引用”项目,并选取项目中的“Microsoft Excel 11.0 object library”项。
由于你的Excel版本不同,所以这个选项的版本号也是不同的。3. 因为EXCEL是以层次结构组织对象的,其对象模型中含有许多不同的对象元素。
第一层:Application对象,即Excel本身; 第二层:workbooks对象集,指Excel的工作簿文件 第三层:worksheets对象集,表示的是Excel的一个工作表; 第四层:Cells和Range对象,指向Excel工作表中的单元格。 新建立一个VB的工程,先放一个button,名称为Excel_Out。
先定义好各层: Dim xlapp As Excel.Application 'Excel对象 Dim xlbook As Excel.Workbook '工作簿 Dim xlsheet As Excel.Worksheet '工作表 4. 我们打算做的是:打开/新建一个excel,在其中对某工作表的一些单元格修改其值,然后另存为test.xls文件。 Private Sub Excel_Out_Click() Dim i, j As Integer Set xlapp = CreateObject("Excel.Application") '创建EXCEL对象 'Set xlbook = xlapp.Workbooks.Open(App.Path & "\test.xls") '打开已经存在的test.xls工件簿文件 Set xlbook = xlapp.Workbooks.Add '新建EXCEL工件簿文件 'xlbook.RunAutoMacros (xlAutoOpen) '运行EXCEL启动宏 'xlbook.RunAutoMacros (xlAutoClose) '运行EXCEL关闭宏 xlapp.Visible = True '设置EXCEL对象可见(或不可见) Set xlsheet = xlbook.Worksheets(1) '设置活动工作表'' ''~~~当前工作簿的第一页,这里也可以换成“表名” '下面就是简单的在一些单元格内写入数字 For i = 7 To 15 For j = 1 To 10 xlsheet.Cells(i, j) = j '当前工作簿第一页的第I行第J列 Next j Next i With xlsheet '设置边框为是实线 .Range(.Cells(7, 1), .Cells(28, 29)).Borders.LineStyle = xlContinuous End With '引用当前工作簿的第二页 Set xlsheet = xlapp.Application.Worksheets(2) xlsheet.Cells(7, 2) = 2008 '在第二页的第7行第2列写入2008 xlsheet.SaveAs App.Path & "\test.xls" '按指定文件名存盘 'Set xlbook = xlapp.Application.Workbooks.Add '新建一空白工作簿 xlapp.Quit '结束EXCEL对象'xlapp.Workbooks.Close Set xlapp = Nothing '释放xlApp对象 End Sub 5, 这样,我们就可以简单的对excel文件进行操作了。
下面再放一些我从网上查到的资料吧,还挺有用的: 1.创建Excel对象 eole=CREATEOBJECT(′Excel.application′) 2.添加新工作簿 eole.Workbooks.add 3.设置第3个工作表为激活工作表 eole.Worksheets(〃sheet3〃).Activate 4.打开指定工作簿 eole.Workbooks.Open(〃c:\temp\ll.xls〃) 5.显示Excel窗口 eole.visible=.t. 6.更改Excel标题栏 eole.Caption=〃VB应用程序调用Microsoft Excel〃 7.给单元格赋值 eole.cells(1,4).value=XM(XM为数据库字段名) 8.设置指定列的宽度(单位:字符个数) eole.ActiveSheet.Columns(1).ColumnWidth=5 9.设置指定行的高度(单位:磅) eole.ActiveSheet.Rows(1).RowHeight=1/0.035 (设定行高为1厘米,1磅=0.035厘米) 10.在第18行之前插入分页符 eole.Worksheets(〃Sheet1〃).Rows(18).PageBreak=1 11.在第4列之前删除分页符 eole.ActiveSheet.Columns(4).PageBreak=0 12.指定边框线宽度(Borders参数如下) ole.ActiveSheet.Range(〃b3:d3〃).Borders(2).Weight=3 13.设置四个边框线条的类型 eole.ActiveSheet.Range(〃b3:d3〃).Borders(2).LineStyle=1 (其中Borders参数:1-左、2-右、3-顶、4-底、5-斜、6-斜/;LineStyle值:1与7-细实、2-细虚、4-点虚、9-双细实线) 14.设置页眉 eole.ActiveSheet.PageSetup.CenterHeader=〃报表1〃 15.设置页脚 eole.ActiveSheet.PageSetup.CenterFooter=〃第&P页〃 16.设置页眉到顶端边距为2厘米 eole.ActiveSheet.PageSetup.HeaderMargin=2/0.035 17.设置页脚到底边距为3厘米 eole.ActiveSheet.PageSetup.FooterMargin=3/0.035 18.设置顶边距为2厘米 eole.ActiveSheet.PageSetup.TopMargin=2/0.035 19.设置底边距为4厘米 eole.ActiveSheet.PageSetup.BottomMargin=4/0.035 20.设置左边距为2厘米 veole.ActiveSheet.PageSetup.LeftMargin=2/0.035 21.设置右边距为2厘米 eole.ActiveSheet.PageSetup.RightMargin=2/0.035 22.设置页面水平居中 eole.ActiveSheet.PageSetup.CenterHorizontally=.t. 23.设置页面垂直居中 eole.ActiveSheet.PageSetup.CenterVertically=.t. 24.设置页面纸张大小(1-窄行8?5?11 39-宽行14?11) eole.ActiveSheet.PageSetup.PaperSize=1 25.打印单元格网线 eole.ActiveSheet.PageSetup.PrintGridlines=.t. 26.拷贝整个工作表 eole.ActiveSheet.UsedRange.Copy 27.拷贝指定区域 eole.ActiveSheet.Range(〃A1:E2。
6.vb编程中怎么使用excel表格中的数据
读出。
里面行数为你要读取的行数。
Dim xlApp As New Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Dim RNG As Excel.Range Private Sub Command1_Click() Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open(App.Path & "\xxx.xls") for n =1 to 行数 list1.additem xlSheet.Cells(n, 1) next xlBook.Close (True) xlApp.Quit Set xlApp = Nothing End Sub 写入大致相同就是循环里面改一下。
for n =1 to list1.listcount xlSheet.Cells(n, 1)=list.list(n) next。