自己用vb制作类似电子表格的可输入控件

自己用vb制作类似电子表格的可输入控件
自己用vb制作类似电子表格的可输入控件

自己用vb制作类似电子表格的可输入控件

应朋友之邀,准备制作一个工程软件,我首选用Visual basic 6.0语言工具来编程,可是

在编程的过程中发现需要输入输出大量数据的控件,像MSFlexGrid, MSHFlexGrid, DataGrid

等不能像Excel 中电子表格那样直接输入数据,可愁坏了我,于是在网上搜罗一翻,把那些

个代码进行了调试,还不能使自己满意,靠别人还不如靠自己,运用别人的灵感加上自己的

努力,我终于把MSFlexGrid控件给进行了改造,自己感觉挺满意的,就把自己的改造心德

写成文字,分享给那些喜欢编程的童鞋们参考。

基本思路:

1.MSFlexGrid控件不能直接进行数据输入,我用一个文本框代替单元格的输入工作。

2.当任何一个单元格获得焦点时,文本框完全覆盖获得焦点的单元格,这样就不会像

MSFlexGrid控件的第一印象让人感觉生硬不爽。

3.鼠标点击单元格,上下左右健移动单元格时,文本框还要显示相应单元格的数据,基本

上是完全代替了获得焦点的单元格,这样,一个文本框的作用不仅仅是向单元格输入,还会起到显示数据的作用。

以上思路,其实就是这么简单,不多说,下面就是具体编程过程,代码也很简单。

一,在窗体From1中添加,一个MSFlexGrid控件,一个文本框text1.

二,属性:

属性

控件名称height width Borderstyle RowHeightMin fixedcols rows cols Grid1 300 0 4 8 MSFlexGri

d控件

Text控件Text1 280 1180 0

三,属性设置好了,现在就开始写代码。你也可以全部复制粘贴

Option Explicit

Const Enter_Asc = 13 ‘首先需要声明一些常量

Const Tab_Asc = 9

Private Sub Form_Load()

Dim i As Integer

For i = 0 To Grid1.Cols – 1 ‘设置Grid控件的宽度

Grid1.ColWidth(i) = 1200

Next i

For i = 0 To 7 Step 2

Grid1.TextMatrix(0, i) = "测点编号" '在Grid固定行添加列标题。

Next i

For i = 1 To 7 Step 2

Grid1.TextMatrix(0, i) = "测点厚度(mm)"

Next i

End Sub

Private Sub Grid1_Click()

‘下面这两句很关键,是指在Grid1控件单击事件发生时,Text1控件会在相应单元格上出

Text1.Left = Grid1.Left + (Grid1.ColWidth(0)) * Grid1.MouseCol

Text1.Top = Grid1.Top + (Grid1.RowHeight(0)) * Grid1.MouseRow

If Text1.Top = Grid1.Top Then ‘判断鼠标是否点击了列标题行,如果是的话,则自动转至下一行显示文本框,文本框就不会覆盖在列标题上。

Text1.Top = Grid1.Top + (Grid1.RowHeight(0)) * 1

End If

End Sub

Private Sub Grid1_KeyPress(KeyAscii As Integer) ‘Grid控件接受键盘输入时激活文本框Text1.SetFocus

Text1.SelStart = 0

If KeyAscii <> Enter_Asc And KeyAscii <> Tab_Asc Then

SendKeys Chr(KeyAscii)

End If

End Sub

Private Sub Grid1_RowColChange() ‘可以使用上下左右健控制单元格,当单元格的焦点变化时文本框也随之变化。这句很关键

Text1.Text = Grid1.Text

Text1.Left = Grid1.Left + (Grid1.ColWidth(0)) * Grid1.Col

Text1.Top = Grid1.Top + (Grid1.RowHeight(0)) * Grid1.Row

End Sub

Private Sub Text1_LostFocus()

Grid1.Text = Text1.Text

End Sub

Private Sub Text1_Change() ‘文本框的内容变化时,让文本框的内容与Grid控件内容一致Grid1.Text = Text1.Text

End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)

If KeyAscii = Enter_Asc Then

Grid1.SetFocus

KeyAscii = 0

End If

End Sub

Private Sub Text1_LostFocus()

Grid1.Text = Text1.Text

End Sub

怎么用excel宏命令完成财务指标的计算

怎么用excel宏命令完成财务指标的计算 于是,你的价值一直没有很好地体现。 事实上在同一家单位里,你所编制的会计报表其格式一般都是固定不变的,每月如此,每季如此,每年如此。除非财政部又发通知,要求变更。 由于报表格式不变,计算公式不变,每月重复,是可以利用宏来完成的。其步骤如下: 首先,建立报表分析数据源。以后报表项目不变,我们只改变报表项目金额就可以了。在利用财务软件的情况下,只要导出报表就 可以了,也省了重新输入的麻烦。 我们在EXCEL中建立三张报表,资产负债表,利润表,现金流量表,如图: 图:在EXCEL中建立报表的数据源 其次,录制宏命令。 (1)执行【开发工具】/〖录制宏〗命令,(在2003版中,是“工具”菜单下)在录新新宏的对话框中输入宏的名称,保存在个人宏工 作簿中,以便让她能在所有的工作簿中发挥作用,如下图:图:录制新宏,宏的命名 (2)然后新增工作表,在新增的工作表中输入需要计算的各项指标,并利用引用方式进行各种财务指标的计算公式设置。 图:利用引用方式进行各期各项指标的计算公式设置 这项工作是不能偷懒的,第一次嘛,要做认真,要一项一项地设置,而且要做对。注意,一定要以引用的方式建立计算公式,如流 动比率计算公式,是等于流动资产合计/流动负债合计见上图。

(2)操作完成后,执行【开发工具】/〖停止录制〗命令,此时,宏命令就录制完成了。 以后,计算新报表的财务指标。当你新的年报出来了,或是月报出来,你只要执行相应的宏命令就可以了。 图:执行宏命令 你会注意到,一张反映各期财务指标的工作表出来了,其间不需花费2秒钟,当然,你也可以象我一样再进行录制比较资产负债表,结构资产负债表的宏命令制作。 这一切,将工作变得更轻松,更有效率。 猜你喜欢:

用VB操作excel方法汇总

用VB操作excel方法汇总 Private Sub Command3_Click() Dim i As Long Dim j As Long Dim objExl As Excel.Application '声明对象变量 Me.MousePointer = 11 '改变鼠标样式 Set objExl = New Excel.Application '初始化对象变量 objExl.SheetsInNewWorkbook = 1 '将新建的工作薄数量设为1 objExl.Workbooks.Add '增加一个工作薄 objExl.Sheets(objExl.Sheets.Count).Name = "book1" '修改工作薄名称 objExl.Sheets.Add , objExl.Sheets("book1") '增加第二个工作薄在第一个之后 objExl.Sheets(objExl.Sheets.Count).Name = "book2" objExl.Sheets.Add , objExl.Sheets("book2") '增加第三个工作薄在第二个之后 objExl.Sheets(objExl.Sheets.Count).Name = "book3" objExl.Sheets("book1").Select '选中工作薄 For i = 1 To 50 '循环写入数据 For j = 1 To 5 If i = 1 Then objExl.Selection.NumberFormatLocal = "@" '设置格式为文本 objExl.Cells(i, j) = " E " & i & j Else objExl.Cells(i, j) = i & j End If Next Next objExl.Rows("1:1").Select '选中第一行 objExl.Selection.Font.Bold = True '设为粗体 objExl.Selection.Font.Size = 24 '设置字体大小 objExl.Cells.EntireColumn.AutoFit '自动调整列宽 objExl.ActiveWindow.SplitRow = 1 '拆分第一行 objExl.ActiveWindow.SplitColumn = 0 '拆分列 objExl.ActiveWindow.FreezePanes = True '固定拆分 objExl.ActiveSheet.PageSetup.PrintTitleRows = "$1:$1" '设置打印固定行 objExl.ActiveSheet.PageSetup.PrintTitleColumns = "" '打印标题 objExl.ActiveSheet.PageSetup.RightFooter = "打印时间: " & _ For mat(Now, "yyyy年mm月dd日 hh:MM:ss") objExl.ActiveWindow.View = xlPageBreakPreview '设置显示方式 objExl.ActiveWindow.Zoom = 100 '设置显示大小 '给工作表加密码 objExl.ActiveSheet.Protect "123", DrawingObjects:=True, _ Contents:=True, Scenarios:=True objExl.Application.IgnoreRemoteRequests = False

制作Excel报表的方法

也许你已经在Excel中完成过上百张财务报表,也许你已利用Excel函数实现过上千次的复杂运算,也许你认为Excel也不过如此,甚至了无新意。但我们平日里无数次重复的得心应手的使用方法只不过是Excel全部技巧的百分之一。本专题从Excel中的一些鲜为人知的技巧入手,领略一下关于Excel的别样风情。 一、让不同类型数据用不同颜色显示 在工资表中,如果想让大于等于2000元的工资总额以“红色”显示,大于等于1500元的工资总额以“蓝色”显示,低于1000元的工资总额以“棕色”显示,其它以“黑色”显示,我们可以这样设置。 1.打开“工资表”工作簿,选中“工资总额”所在列,执行“格式→条件格式”命令,打开“条件格式”对话框。单击第二个方框右侧的下拉按钮,选中“大于或等于”选项,在后面的方框中输入数值“2000”。单击“格式”按钮,打开“单元格格式”对话框,将“字体”的“颜色”设置为“红色”。 2.按“添加”按钮,并仿照上面的操作设置好其它条件(大于等于1500,字体设置为“蓝色”;小于1000,字体设置为“棕色”)。 3.设置完成后,按下“确定”按钮。 看看工资表吧,工资总额的数据是不是按你的要求以不同颜色显示出来了。 二、建立分类下拉列表填充项 我们常常要将企业的名称输入到表格中,为了保持名称的一致性,利用“数据有效性”功能建了一个分类下拉列表填充项。 1.在Sheet2中,将企业名称按类别(如“工业企业”、“商业企业”、“个体企业”等)分别输入不同列中,建立一个企业名称数据库。 2.选中A列(“工业企业”名称所在列),在“名称”栏内,输入“工业企业”字符后,按“回车”键进行确认。 仿照上面的操作,将B、C……列分别命名为“商业企业”、“个体企业”…… 3.切换到Sheet1中,选中需要输入“企业类别”的列(如C列),执行“数据→有效性”命令,打开“数据有效性”对话框。在“设置”标签中,单击“允许”右侧的下拉按钮,选中“序列”选项,在下面的“来源”方框中,输入“工业企业”,“商业企业”,“个体企业”……序列(各元素之间用英文逗号隔开),确定退出。 再选中需要输入企业名称的列(如D列),再打开“数据有效性”对话框,选中“序列”选项后,在“来源”方框中输入公式:=INDIRECT(C1),确定退出。 4.选中C列任意单元格(如C4),单击右侧下拉按钮,选择相应的“企业类别”填入单元格中。然后选中该单元格对应的D列单元格(如D4),单击下拉按钮,即可从相应类别的企业名称列表中选择需要的企业名称填入该单元格中。 提示:在以后打印报表时,如果不需要打印“企业类别”列,可以选中该列,右击鼠标,选“隐藏”选项,将该列隐藏起来即可。 三、建立“常用文档”新菜单 在菜单栏上新建一个“常用文档”菜单,将常用的工作簿文档添加到其中,方便随时调用。 1.在工具栏空白处右击鼠标,选“自定义”选项,打开“自定义”对话框。在“命令”标签中,选中“类别”下的“新菜单”项,再将“命令”下面的“新菜单”拖到菜单栏。 按“更改所选内容”按钮,在弹出菜单的“命名”框中输入一个名称(如“常用文档”)。 2.再在“类别”下面任选一项(如“插入”选项),在右边“命令”下面任选一项(如“超链接”选项),将它拖到新菜单(常用文档)中,并仿照上面的操作对它进行命名(如“工资表”

VB编程在Excel中的应用

EXCEL 编程(VBA) Excel 最重要的应用就是利用公式进行计算。无论输入是纯粹的数字运算,还是引用其他单元格计算,只要在一个单元格中输入公式,就能得到结果。这个直接显示结果的设计对于绝大多数场合来说都是适用的,但某些情况下就不那么让人满意了。比如说在做工程施工的预结算编写,使用Excel,既要写出工程量的计算式,也要看到它的结果,于是这样相同的公式在Excel里面要填两次,一次在文本格式的单元格中输入公式,一次是在数据格式的单元格中输入公式让Excel计算结果。如何既能看到公式又能看到结果呢?这个问题笔者认为可以从两个方面考虑:一种方法是所谓“已知结果,显示公式”,先在数据格式单元格中输入公式让Excel计算结果,然后在相邻的单元格中看到公式;另一种方法所谓“已知公式,显示结果”,就是先在一个文本格式的单元格中输入公式,在相邻的单元格中看到结果。 ★ 已知结果,显示公式 假设C列为通过公式计算得到的结果(假设C1为“=A1+B1”,或者直接是数字运算“=2+3”),而相邻的D列是你需要显示公式的地方(即D1应该显示为“=A1+B1”或者“=2+3”)。 1. 打开“工具”菜单选择“选项”命令,出现“选项”对话框。 2. 在“常规”选项卡中,选中“R1C1引用方式”选项。 3. 定义名称,将“引用位置”由“=GET.CELL(6,Sheet1!RC[-1])”即可。这里的RC[-1]含义是如果在当前单元格的同行前一列单元格中有公式结果,则在当前单元格中得到公式内容,即在含公式结果单元格的同行后一列单元格显示公式内容;如果将RC[-1]改为RC[1],则在公式结果的同行前一列单元格显示公式内容。 4. 如果“引用位置”中含有“RC[-1]”,则在含公式结果单元格的同行后一列单元格中输入“=FormulaofResult”即可得到公式;如果“引用位置”中含有“RC[1]”,则在含公式结果单元格的同行前一列单元格中输入“=FormulaofResult”即可得到公式。 提示:如果想要在含公式结果单元格的同行后数第2列中显示公式内容,则需要把“引用位置”中的“RC -1 ”改为“RC -2 ”。 ★已知公式,显示结果 假设C列为输入的没有等号公式(假设C1为“A1+B1”),而相邻的D列是你需要存放公式计算结果的地方(即D1显示A1和B1单元格相加的结果)。 1. 选中D1,然后打开“插入”菜单选择“名称”命令中的“定义”子命令,出现“定义名称”对话框。 2. 在“在当前工作表中的名称”输入栏中输入定义的名称“ResultofFomula”,在下方的“引用位置”编辑栏中输入“=EVALUATE(Sheet1!C1)”,单击[确认]按钮退出。 3. 在 D1中输入“=ResultofFomula”,然后选中按住右下角的填充柄向下拉动填充即可。 提示:EVALUATE 是Eexcel 4.0版的宏表函数,Excel 2000和Excel 2002中 还支持,但只可用于名称定义中。 4. 填充后要按[F9]进行重算,如果C列的公式有改动,也需要及时按[F9]进行

电子表格制作简易教程

电子表格制作简易教程 考虑到咱们部门大多数人没有使用Excel 的相关经验,我在此写一点基础性的做表方法和心得,做表老手就不用看了。 Excel 其软件 现在的Excel 软件分为微软旗下的“office Excel ”和中国国产的“WPS 表格”。两者大同小异,且在我看来,WPS 系列软件是office 系列软件的山寨版。不过,我们也不得不承认,WPS 这个山寨货比office 好用。由于本人使用的是WPS 的版本,所以接下来的内容都是以WPS 表格制作为例的。 秘书处所做表的类型 秘书处的电子表只是运用了Excel 软件中非常基础的部分,因此个人认为是非常容易学习的。我们所做的电子表和常见的数据类电子表不同,我们的多是信息类的表,例如“秘书处联系表”这种。这样以来,电子表的整个“函数”部分我们都不需要接触了,即 基本概念 1.单元格:打开Excel 软件,入眼的一个个格状物,便是一个一个的单元格。从一定的程度上来讲,每个单元格都是可以看作是一个迷你的文档。 2.先选定后操作:微软几乎所有的软件都是“先选定,后操作”,例如,你要先选择你要修改的文字,然后才能进行字体大小等等的调整。这一点看起来很傻很基础,但却非常非常重要,很多常做表的人都没有注意到这一点,使得操作更加复杂。 工具栏里的常用按键 ①字体,不解释。 ②字号,即字的大小。 ③字体加粗,多用在标题上。 ④居中,为了表格的美观,我们会让单元格内的内容放在整个单元格的正中间。不过这个按键往往只能做到“水平居中”而不能“垂直居中”。垂直居中后面再讲。 ⑤自动换行,如图1-1,右边的“性别”二字使用了“自动换行”。在一个单元格里,按“回车”键是没有换行效果的。很多新手会使用空格达到换行的 目的,这样会使表难以修改。 ⑥合并单元格,这是秘书处的电子表中最最常用的按键。用 法是拖黑多个单元格(即选定),然后点击此按钮(即操作)。如 图1-2,左边的“副部长”使用了“合并单元格”。灵活运用合并 单元格功能是使电子表排版美观的关键。 ⑦边框,后面再着重讲。 ⑧填充颜色,自行尝试。不太常用 ⑨字体颜色,不解释。 ① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ 1-1 1-2

怎样制作EXCEL表格

如何制作电子表格 1 、打开EXCL电子表格程序 2、页面设置 单击文件→页面设置→选纸张,设置纸张大小→选页边距,设置上、下、左、右,横向或纵向→单击确定。 3、设置好页面就会有虚线框出现——你在虚线框内编辑——不要超出虚线框外——不然超出部分打印不出来的——第一行一般都是标题行——从第二行或者第三行开始——输入你的资料,不论有多少列,都必须在虚线框内 4、输入完毕后→选中表格内容(标题行一般不选,因为它不需要边框)→点菜单栏“格式”→单元格→边框→外边框——这是为你输入的内容设置边框——还可以在单元格对话框里设置“对齐”方式——一般水平和垂直都设为居中或常规。 注:想要对表格设置的格式几乎都是“格式”菜单里的“单元格”对话框里,你自己打开看看,练习练习就晓得它们的用途了。 * 制作表格更轻松让系统自动生成表头的方法。 当我们制作的表格有好多页的时候(如成绩统计表等),为便于观看,最好是每一页都添加一个相同的表头。如果表格文件页数很少,通过手工的方法就可以很容易地实现。但当一个表格文件多达数十页的时候,再一个一个地逐页添加,不仅费事,还容易出错。那么,有没有办法让系统自动生成呢? 1. 在Word 2003中 打开Word 2003表格文档,选中第一页表的表头,然后点击“表格→标题行重复”。假如表头有两行内容,选中开头两行,这样,在后面的每一页,都会将这两行的内容作为表头。 2.在Excel 2003中 (1)打开Excel表格文档,点击“文件→页面设置”。 (2)在调出的“页面设置”对话框中,选择“工作表”选项卡,在“顶端标题行”栏中输入表头行号,其中,“$1”表示第1行,“$1:$2”表示第1、2行。本例中设置为“$1:$2”,打印出来的每页表格便都有同第1、2两行同样内容的表头。

怎样实现用VB对EXCEL的操作

用VB操作excel方法 Private Sub Command3_Click() Dim i As Long Dim j As Long Dim objExl As Excel.Application'声明对象变量 Me.MousePointer=11'改变鼠标样式 Set objExl=New Excel.Application'初始化对象变量 objExl.SheetsInNewWorkbook=1'将新建的工作薄数量设为1 objExl.Workbooks.Add'增加一个工作薄 objExl.Sheets(objExl.Sheets.Count).Name="book1"'修改工作薄名称 objExl.Sheets.Add,objExl.Sheets("book1")'增加第二个工作薄在第一个之后 objExl.Sheets(objExl.Sheets.Count).Name="book2" objExl.Sheets.Add,objExl.Sheets("book2")'增加第三个工作薄在第二个之后 objExl.Sheets(objExl.Sheets.Count).Name="book3" objExl.Sheets("book1").Select'选中工作薄 For i=1To50'循环写入数据 For j=1To5 If i=1Then objExl.Selection.NumberFormatLocal="@"'设置格式为文本 objExl.Cells(i,j)="E"&i&j Else objExl.Cells(i,j)=i&j End If Next Next objExl.Rows("1:1").Select'选中第一行 objExl.Selection.Font.Bold=True'设为粗体 objExl.Selection.Font.Size=24'设置字体大小 objExl.Cells.EntireColumn.AutoFit'自动调整列宽 objExl.ActiveWindow.SplitRow=1'拆分第一行 objExl.ActiveWindow.SplitColumn=0'拆分列 objExl.ActiveWindow.FreezePanes=True'固定拆分 objExl.ActiveSheet.PageSetup.PrintTitleRows="$1:$1"'设置打印固定行 objExl.ActiveSheet.PageSetup.PrintTitleColumns=""'打印标题 objExl.ActiveSheet.PageSetup.RightFooter="打印时间:"&_ For mat(Now,"yyyy年mm月dd日hh:MM:ss") objExl.ActiveWindow.View=xlPageBreakPreview'设置显示方式 objExl.ActiveWindow.Zoom=100'设置显示大小 '给工作表加密码 objExl.ActiveSheet.Protect"123",DrawingObjects:=True,_ Contents:=True,Scenarios:=True objExl.Application.IgnoreRemoteRequests=False objExl.Visible=True'使EXCEL可见

excel表格制作方法

Excel表格的35招必学秘技 也许你已经在Excel中完成过上百张财务报表,也许你已利用Excel函数实现过上千次的复杂运算,也许你认为Excel也不过如此,甚至了无新意。但我们平日里无数次重复的得心应手的使用方法只不过是Excel全部技巧的百分之一。本专题从Excel中的一些鲜为人知的技巧入手,领略一下关于Excel的别样风情。 一、让不同类型数据用不同颜色显示 在工资表中,如果想让大于等于2000元的工资总额以“红色”显示,大于等于1500 元的工资总额以“蓝色”显示,低于1000元的工资总额以“棕色”显示,其它以“黑色”显示,我们可以这样设置。 1.打开“工资表”工作簿,选中“工资总额”所在列,执行“格式→条件格式”命令,打开“条件格式”对话框。单击第二个方框右侧的下拉按钮,选中“大于或等于”选项,在后面的方框中输入数值“2000”。单击“格式”按钮,打开“单元格格式”对话框,将“字体”的“颜色”设置为“红色”。 2.按“添加”按钮,并仿照上面的操作设置好其它条件(大于等于1500,字体设置为“蓝色”;小于1000,字体设置为“棕色”)。 3.设置完成后,按下“确定”按钮。 看看工资表吧,工资总额的数据是不是按你的要求以不同颜色显示出来了。 二、建立分类下拉列表填充项 我们常常要将企业的名称输入到表格中,为了保持名称的一致性,利用“数据有效性”功能建了一个分类下拉列表填充项。 1.在Sheet2中,将企业名称按类别(如“工业企业”、“商业企业”、“个体企业”等)分别输入不同列中,建立一个企业名称数据库。 2.选中A列(“工业企业”名称所在列),在“名称”栏内,输入“工业企业”字符后,按“回车”键进行确认。 仿照上面的操作,将B、C……列分别命名为“商业企业”、“个体企业”…… 3.切换到Sheet1中,选中需要输入“企业类别”的列(如C列),执行“数据→有效性”命令,打开“数据有效性”对话框。在“设置”标签中,单击“允许”右侧的下拉按钮,选中“序列”选项,在下面的“来源”方框中,输入“工业企业”,“商业企业”,“个体企业”……序列(各元素之间用英文逗号隔开),确定退出。 再选中需要输入企业名称的列(如D列),再打开“数据有效性”对话框,选中“序列”选项后,在“来源”方框中输入公式:=INDIRECT(C1),确定退出。 4.选中C列任意单元格(如C4),单击右侧下拉按钮,选择相应的“企业类别”填入单元格中。然后选中该单元格对应的D列单元格(如D4),单击下拉按钮,即可从相应类别的企业名称列表中选择需要的企业名称填入该单元格中。 提示:在以后打印报表时,如果不需要打印“企业类别”列,可以选中该列,右击鼠标,选“隐藏”选项,将该列隐藏起来即可。

EXCEL宏编程简明教程(有实例),

Excel宏编程简明教程 一)、宏学习 首先需要明确的是,本文不可能教会您关于宏的所有内容。您需要学会利用"录制宏"的方法来学习宏: 点击Excel"工具"下拉菜单中"宏"下?quot;录制新宏",此后可象平时一样进行有关操作,待完成后停止录制。然后再点击"工具"下拉菜单中"宏"下"宏"的"编辑"选项即可打开刚才所录制的宏的Visual Basic源程序,并且可以在此时的"帮助"下拉菜单中获得有关的编程帮助。对录制宏进行修改不仅可以学习宏的使用,还能大大简化宏的编写。 二)、基本概念 为了学习Excel中的宏,我们需要先了解以下一些基本概念。 1、工作簿: Workbooks、Workbook、ActiveWorkbook、ThisWorkbooks集合包含Excel中所有当前打开的Excel工作簿,亦即所有打开的Excel文件;Workbook对应Workbooks中的成员,即其中的Excel文件;ActiveWorkbook代表当前处于活动状态的工作簿,即当前显示的Excel文件;ThisWorkbook代表其中有Visual Basic 代码正在运行的工作簿。 在具体使用中可用Workbooks(index)来引用Workbook对象,其中index为工作簿名称或编号;如Workbooks (1)、Workbooks("年度报表.xls")。而编号按照创建或打开工作簿的顺序来确定,第一个打开的工作簿编号为1,第二个打开的工作簿为2……。 2、工作表: Worksheets、Worksheet、ActiveSheet

Worksheets集合包含工作簿中所有的工作表,即一个Excel文件中的所有数据表页;而Worksheet则代表其中的一个工作表;ActiveSheet代表当前处于的活动状态工作表,即当前显示的一个工作表。 可用Worksheets(index)来引用Worksheet对象,其中index为工作表名称或索引号;如Worksheets (1)、Worksheets("第一季度数据")。工作表索引号表明该工作表在工作表标签中的位置: 第一个(最左边的)工作表的索引号为1,最后一个(最右边的)为Worksheets.Count。需要注意的是: 在使用过程中Excel会自动重排工作表索引号,保持按照其在工作表标签中的从左至右排列,工作表的索引号递增。因此,由于可能进行的工作表添加或删除,工作表索引号不一定始终保持不变。 3、图表: Chart、Charts、ChartObject、ChartObjects、ActiveChart代表工作簿中的图表。该图表既可为嵌入式图表(包含在ChartObject中),也可为一个分开的(单独的)图表工作表。 Charts代表指定工作簿或活动工作簿中所有图表工作表的集合,但不包括嵌入式在工作表或对话框编辑表中的图表。使用Charts(index)可引用单个Chart 图表,其中index是该图表工作表的索引号或名称;如Charts (1)、Charts("销售图表")。图表工作表的索引号表示图表工作表在工作簿的工作表标签栏上的位置。Charts (1)是工作簿中第一个(最左边的)图表工作表; Charts(Charts.Count)为最后一个(最右边的)图表工作表。 ChartObject代表工作表中的嵌入式图表,其作用是作为Chart对象的容器。利用ChartObject可以控制工作表上嵌入式图表的外观和尺寸。

用VB操作EXCEL(VB6.0)(整理)

用VB操作Excel(VB6.0)(整理)全面控制Excel: 首先创建Excel对象,使用ComObj: Dim ExcelID as Excel.Application Set ExcelID as new Excel.Application 1)显示当前窗口: ExcelID.Visible:=True; 2)更改Excel标题栏: ExcelID.Caption:='应用程序调用MicrosoftExcel'; 3)添加新工作簿: ExcelID.WorkBooks.Add; 4)打开已存在的工作簿: ExcelID.WorkBooks.Open('C:\Excel\Demo.xls'); 5)设置第2个工作表为活动工作表: ExcelID.WorkSheets[2].Activate; 或ExcelID.WorkSheets['Sheet2'].Activate; 6)给单元格赋值: ExcelID.Cells[1,4].Value:='第一行第四列'; 7)设置指定列的宽度(单位:字符个数),以第一列为例: ExcelID.ActiveSheet.Columns[1].ColumnsWidth:=5; 8)设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:ExcelID.ActiveSheet.Rows[2].RowHeight:=1/0.035;//1厘米 9)在第8行之前插入分页符: ExcelID.WorkSheets[1].Rows[8].PageBreak:=1; 10)在第8列之前删除分页符: ExcelID.ActiveSheet.Columns[4].PageBreak:=0; 11)指定边框线宽度: ExcelID.ActiveSheet.Range['B3:D4'].Borders[2].Weight:=3;

Excel表格表头制作方法精编版

E x c e l表格表头制作方 法 集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

E x c e l表格斜线表头制作教程 一、实现文本框的功能 1、选择ExcelXP主菜单上的“视图/工具栏”命令,将ExcelXP的绘图工具栏调出来(当然如果你以前就调出了此工具栏,这一 步可不做); 2、对Excel的单无格作适当调整使我们能对它进行操作(方法就不用我说了吧); 3、单击绘图工具栏中和“矩形绘图工具”(如图1),在Excel工作表的任一位置画出一个矩形框(可能有人要问你不是要用文 本框吗,怎么画起这东西来了,别急请继续往下看呀); 4、用鼠标对准刚才画的“矩形框”点右键,选择“添加文字”命令,这时你再看这个矩形框是不是变成“文本框”了,然后在这个文本框中填入文字(一个即可如图1中的“课” 字如图3); 5、设置文本框的格式,用鼠标右键单击如图3所示的文本框,选择“设置自选图形格 式”(如图4)命令; 6、在弹出的“设置自选图形格式”对话框中选择“颜色与线条”选项卡,分别把“填充” 和“线条”的颜色设为“无填充颜色”(如图5); 7、重复上面的3-6步,分别把图1中其余几个字“程、时、间、星、期”统统都放到 文本框里。 二、绘制斜线 这一步很简单,您只须点击绘图工具栏中的“直线工具”(如图6),即可在您想做的单元格内画出斜线,只是在画线的时候要注意不要画的太长也不要画的太短,这得需要您多 加练习才能画出合适的斜线(如图7)。 三、合并成斜线表头 这一步也得需要您细心认真才能做好,具体可分以下几步:

1、把刚才我们做的那些文本框按图1的格式排列起来; 2、按住Shift键,同时选中这些对象(包括6个文本框和两条斜线)(注:选择时要 等到鼠标箭头变成如图9所示的形状时现点击才能选中你想选的对象); 3、按住Shift键不要松开,在这个单元格中移动鼠标等到它变成如图9所示的形状时,单击右键,在弹出的快捷菜单中选择“组合/组合”命令(如图10),这样便把这些零散的对象合并成一个对象,再也不会被你弄得它们七零八落了; 注:文章也写完了笔者脑中突然灵光一闪,想到了一招偷梁换柱的方法,一试果然甚是灵验,在这里补充上,^_^我这可有是骗稿费哟。方法如下: 1、在Word中利用Word插入斜线表头的方法,做好一个斜线表头(如图1) 2、把鼠标移到这个斜线表头内,当鼠标变成如图9所示的形状后单击右键选择“复 制”命令; 3、转到ExcelXP中,选择主菜单中的“编辑/选择性粘贴”命令; 4、在弹出的“选择性粘贴”对话框中选择“MSOffice绘图对象”,单击“确定”后便把一个斜线表头粘贴到Excel中了,下面你只要用鼠标对它进行适当的调整便可形成Excel 中的斜线表头,你说是不是很Cool; 注:您如果觉得它的样子不合你意你可用鼠标右键再单击这个“小冤家”在弹出的快捷菜单中选择“组合/取消组合”,再对它们进行相应的调节即可。

运用EXCEL实现银行对账自动化

运用EXCEL实现银行对账自动化 许国吴光校 银行对账是指每月单位的银行存款日记账和银行对账单核对,勾销已达账,生成银行存款余额调节表的过程,这是保证资金安全的最重要手段。一般财务系统也带有银行对账模块,但在实际操作中存在这样那样的问题,要么银行对账单的数据文件格式与财务系统不符, 要么财务系统的对账模块不能正常使用,这样只能用手工核对,但这要花较长时间,而且容易出错,一旦出错,核查起来更麻烦。本人充分运用Excel的VBA 功能实现了银行对账自动化。 一、收集对账数据 1、从账务系统中导出银行存款明细账的数据,并保存为EXCEL文档,然后把相应的内容复制到图1中对应的栏目内。 2、银行对账单数据文件一般为DBF格式,也有的为EXCEL文档,如果为DBF文件,就需要转化为EXCEL文档,然后把对应的内容复制到图1中对应的栏目内。处理完后的EXCEL文档如图1,并把“sheet1”工作表重命名为“对账数据”。 图1 二、自动核对对账数据 1、在“对账数据”工作表中选择[工具] →[宏]→[Visual Basic编辑器]菜单,进入VBA编辑窗口,执行[插入]→[模块]命令,插入模块1,然后在编辑窗口中输入如下代码。 Sub zdhd() Dim Irow As Integer, i As Integer, j As Integer Irow = [a1].CurrentRegion.Rows.Count ’取得行数 For i = 3 To Irow ’数据从第3行开始 For j = 3 To Irow If Cells(i, "C") = Cells(j, "K") Then ’如果C列i行等于K列j行 If Cells(i, "D") = Cells(j, "L") Then ’并且D列i行等于L列j行 If Cells(i, "C") <> "" Then ’并且C列i行不等于空 Cells(j, "L") = "√"’则L列j行的值为√ Cells(i, "D") = "√"’则D列i行的值为√

一些实用的excel宏

Excel宏教程 一、选中单个单元格 Range(“<单元格地址>“).Select 例:Range("C9").Select …选中“C9”单元格 二、选中多个单元格 Range(“<单元格地址>:<单元格地址>[,<单元格地址>……]”).Select 例:Range(“A1:B2”).Select…选中“A1”、“A2”、“B1”、“B2”四个连续的单元格Range(“12:12”).Select…选中第12行 Range(“B:B”).Select…选中第B列 Range(“A1:A2,B7,2:2”).Select…选中“A1”、“A2”、“B7”五个不连续的单元格和第二行Cells.Select …选中当前SHEET中的所有单元格 Rows("<行地址>:<行地址>").Select …选中整行 Columns("<列地址>:<列地址>").Select …选中整列 例:Rows(“2:2”). Select…选中第2行 Rows(“2:5”). Select…选中2到5行 Columns("A:A").Select …选中A列 Columns("E:B").Select …选中E到B列

三、设置活动单元格 Range("<单元格地址>").Activate 注:设置活动单元格与选中单元格类似,不同之处就是 后者在选中指定的单元格之前会将在此前已被选中的单元格取消掉。 前者在设置之前不会取消已选中的单元格, 如果此时操作的单元格不是被选中的单元格,这时他实现的功能与选一个单元格相同。 四、给活动的单元格赋值 ActiveCell.FormulaR1C1 = <值> 例:Range("A1").Select ActiveCell.FormulaR1C1 = "Name" Range("B1").Select ActiveCell.FormulaR1C1 = "Age" Range("A2:B3").Select Range("A2").Activate ActiveCell.FormulaR1C1 = " BUG" Range("B2").Activate ActiveCell.FormulaR1C1 = "12" Range("A3").Activate ActiveCell.FormulaR1C1 = "Archer" Range("B3").Activate ActiveCell.FormulaR1C1 = "37"

电子表格操作大全

(1)分数的输入 如果直接输入“1/5”,系统会将其变为“1月5日”,解决办法是:先输入“0”,然后输入空格,再输入分数“1/5”。 (2)序列“001”的输入 如果直接输入“001”,系统会自动判断001为数据1,解决办法是:首先输入“'”(西文单引号),然后输入“001”。 (3)日期的输入 如果要输入“4月5日”,直接输入“4/5”,再敲回车就行了。如果要输入当前日期,按一下“Ctrl+;”键。 (4)填充条纹 如果想在工作簿中加入漂亮的横条纹,可以利用对齐方式中的填充功能。先在一单元格内填入“*”或“~”等符号,然后单击此单元格,向右拖动鼠标,选中横向若干单元格,单击“格式”菜单,选中“单元格”命令,在弹出的“单元格格式”菜单中,选择“对齐”选项卡,在水平对齐下拉列表中选择“填充”,单击“确定”按钮(如图1)。

(5)多张工作表中输入相同的内容 几个工作表中同一位置填入同一数据时,可以选中一张工作表,然后按住Ctrl键,再单击窗口左下角的Sheet1、Sheet2......来直接选择需要输入相同内容的多个工作表,接着在其中的任意一个工作表中输入这些相同的数据,此时这些数据会自动出现在选中的其它工作表之中。输入完毕之后,再次按下键盘上的Ctrl键,然后使用鼠标左键单击所选择的多个工作表,解除这些工作表的联系,否则在一张表单中输入的数据会接着出现在选中的其它工作表内。 (6)不连续单元格填充同一数据 选中一个单元格,按住Ctrl键,用鼠标单击其他单元格,就将这些单元格全部都选中了。在编辑区中输入数据,然后按住Ctrl键,同时敲一下回车,在所有选中的单元格中都出现了这一数据。

Excel宏功能简单应用介绍

Excel宏功能简单应用介绍 所谓宏,就是一组指令集,通过执行类似批处理的一组命令,来完成某种功能。MicrosoftOffice的组件都可以支持宏(Macro)的操作,而Office的宏是指使用VB Script指令集(VB编程语言的子集,可以使用VB的常用语句)编写的针对Office组件的小程序。利用宏,我们可以完成很多程序原本并不支持的特殊应用,比如完成某种特殊的数据计算,或者文档的特殊格式排版等等。下面,就让我们举个简单的例子,看看宏在Excel中如何应用。 有这样一个Excel表格,工作表Sheet1中的第2行的B列开始至D列的连续单元格中是一组共3个数据,第A列的第3行开始至第6行的连续单元格中是一组共4个日期,要编写一段宏来完成这样的工作:将Sheet1第2行的数据由左至右依次纵向复制到Sheet2的B列(从B2开始)中,然后将这组复制完的3个数据所在行的A列都填入Sheet1的A3单元格里面的日期,完成后重复之前的操作,将Sheet1第2行的数据再次复制到Sheet2的B列,这次是从上次复制的B列数据下面的空白单元格,也就是B5开始,然后再在这次复制的3个数据的左侧A列填入Sheet1的A4单元格的日期,这样反复循环,直到She et1的A列的所有日期都出现在了Sheet2的A列里面,也就是Sheet1的第2行数据在 Sheet2的B列里面被复制了4次为止。 编写宏只要有一点点简单的VB编程知识就可以了,并不一定需要很高深的编程技巧,很多时候我们需要的只是一些重复的操作,我们可以通过宏的录制功能来录制一次需要的操作过程,然后再对已经录制的宏进行简单的修改,就能得到所需要的宏了。 对于上面这个事例,实际上只是简单的复制操作,所以甚至连录制的工作都可以省掉了。因为所需要的操作是一个循环的过程,所以我们可以使用一个循环语句来编写程序,这样只要写出一个完成的复制过程,一次循环就可以达到我们的目的了。循环判断的依据就是是否Sheet1的A列所有日期都复制过了,因为数据都是连续排列的,艘以我们可以把Sheet1的A列某个单元格是否有数据作为进入循环的条件,依次复制日期,直到A7这个没有数据的空单元格,循环结束,我们的工作也就完成了。至于循环里面的内容,我们同样再嵌套一个循环,只不过这次是判断第2行的数据是否全都复制完成了,在这个循环里面自然就是单元格数据和日期的复制了。 Sub Macro1() Dim st1y Dim st2y Dim st1x

Excel表格制作使用技巧大全

Excel 使用技巧集锦 目录 一、基本方法7 1.快速选中全部工作表7 2.快速启动E XCEL7 3.快速删除选定区域数据 8 4.给单元格重新命名8 5.在E XCEL中选择整个单元格范围9 6.快速移动/复制单元格9 7.快速修改单元格式次序 9 8.彻底清除单元格内容10 9.选择单元格10 10.为工作表命名11 11.一次性打开多个工作簿 11 12.快速切换工作簿13 13.选定超级链接文本(微软O FFICE技巧大赛获奖作品)13 14.快速查找14 15.修改默认文件保存路径 14 16.指定打开的文件夹15 17.在多个E XCEL工作簿间快速切换15 18.快速获取帮助16 19.创建帮助文件的快捷方式16 20.双击单元格某边移动选定单元格16 21.双击单元格某边选取单元格区域17 22.快速选定不连续单元格 17 23.根据条件选择单元格17 24.复制或移动单元格18

25.完全删除E XCEL中的单元格18 26.快速删除空行19 27.回车键的粘贴功能19 28.快速关闭多个文件20 29.选定多个工作表20 30.对多个工作表快速编辑 20 31.移动和复制工作表21 32.工作表的删除21 33.快速选择单元格21 34.快速选定E XCEL区域(微软O FFICE技巧大赛获奖作品)22 35.备份工件簿22 36.自动打开工作簿23 37.快速浏览长工作簿23 38.快速删除工作表中的空行23 39.绘制斜线表头24 40.绘制斜线单元格25 41.每次选定同一单元格26 42.快速查找工作簿26 43.禁止复制隐藏行或列中的数据27 44.制作个性单元格27 二、数据输入和编辑技巧28 1.在一个单元格内输入多个值 28 2.增加工作簿的页数28 3.奇特的F4键29 4.将格式化文本导入E XCEL29 5.快速换行30 6.巧变文本为数字30 7.在单元格中输入0值31 8.将数字设为文本格式32

用VB操作Excel(VB6.0)(整理)

用V B操作E x c e l(V B6.0)(整理) 全面控制Excel: 首先创建Excel对象,使用ComObj: Dim ExcelID as Excel.Application Set ExcelID as new Excel.Application ? 1)显示当前窗口: ? ExcelID.Visible:=True; 2)更改Excel标题栏: ? ExcelID.Caption:='应用程序调用MicrosoftExcel'; 3)添加新工作簿: 4)打开已存在的工作簿: 5)设置第2个工作表为活动工作表:

? ExcelID.WorkSheets[2].Activate; 或ExcelID.WorkSheets['Sheet2'].Activate; 6)给单元格赋值: ? ExcelID.Cells[1,4].Value:='第一行第四列'; 7)设置指定列的宽度(单位:字符个数),以第一列为例: 8)设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例: 9)在第8行之前插入分页符: ? ExcelID.WorkSheets[1].Rows[8].PageBreak:=1; 10)在第8列之前删除分页符: 11)指定边框线宽度: ? 1-左 2-右 3-顶4-底 5-斜(\) 6-斜(/)

12)清除第一行第四列单元格公式: 13)设置第一行字体属性: 14)进行页面设置: a.页眉: b.页脚: c.页眉到顶端边距2cm: d.页脚到底端边距3cm:

e.顶边距2cm: f.底边距2cm: g.左边距2cm: h.右边距2cm: i.页面水平居中:j.页面垂直居中:k.打印单元格网线:

相关文档
最新文档