问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

200分,多个excel文件统计数据问题,详情请进!

发布网友 发布时间:2022-04-23 06:56

我来回答

5个回答

热心网友 时间:2022-06-17 02:49

VBA概述:VBA是Visual Basic For Application的缩写,是VB在office中的运用。是基于Visual Basic For Windows发展而来的,VB For Windows是Microsoft于1992年推出的开发Windows应用程序的程序设计语言,由于基语法简单,易学易用,所以深受用户的欢迎。而VBA和VB For Windows大体相似。
在Office2000之前,VBA在Word,Excel,Access等Office系统软件中的运用有些有同,但是到Office2000就统一起来了。
Excel是第一个包含有VBA的应用程序,自Office2000以后,Eexel,Word,PowerPoint,Access中已经有了统一标准的宏语言VBA,其中Excel和Access的VBA最为成熟。
在Excel中VBA程序即可以存放有.xls中,也可以单独以文本形式存放。对VBA的学习,用户首先必须VB有一定的了解(不过不必很专业,毕竟经常用Excel的用户一般是办公人员,不可能是专业编程人员),然后结合宏记录器学习。因为,宏记录器可以记录宏,用户可以非常清楚了然VBA的很多知识。另外,如果不是功能很强大的VBA程序,那么用宏记录器就足够了。打开密码记录器的方法,通过“工具->宏->录制新宏”。另外,用户可能用“工具->宏->宏...”来管理宏。用“工具->宏->VB 编辑器”或Alt+F11可以打开VB编辑器,在VB编程器,可以很方便地整个VB工程进行管理,可以方便地编写VBA代码,另外,用户可以再点击Alt+F11切换到Excel窗口。

VBA的使用过程:
1、创建一个Excel文件。
2、创建一个控件,然后双击控件或是右击该控件,点击“查看代码”,就可以对该控件的某个事件,如click,keydown等。
进行编写执行代码了。创建控件的方法是,点击“视图->工具栏->控件工具箱”,打开“控件工具箱”栏,然后就可以直接拖动某个控件到Excel单元格中去。在Excel中窗口,添加的控件一般是处于执行状态的,如果要对这个控件进行编辑,除了第一次建立的时候可以对它进行属性编辑外,打开“控件工具箱”,也可以使控件处于编辑状态,如果还不行,可以再添加一个控件,然后已有的控件绝对会处于编辑状态。当然,对控件修改完毕后,别忘了删除刚才新添加的没有用的控件。在编辑状态中,你可以右击该控件,点击“属性”,那么就可以打开属性窗口,在这个窗口里,你可以很方便的对这个控件的名字,标题,大小等属性进行编辑。
3、手动或用宏记录器对该控件的某个事件进行编码。宏记录器简单易用,不过强大的功能还是必须手动编写VBA。

VBA对象介绍:
编写VBA代码的最关键在于灵活运用VBA对象,对这些VBA对象的属性或方法进行操作。另外,你也可以创建自定义函数,来对某些操作进行封装。既然是VBA,编码风格当然和VB相同,如果会VB,那么只要对VBA的对象比较了解,就可以编写功能强大的VBA程序;同样,如果不会VB,那么,只需要了解VBA的对象就够了,因为它比较简单易学。
以下分别讨论VBA各对象对其属性与方法:

在一些可以包含其他对象的窗口对象中,有几个特殊的属性,其属性值是当前活动对象,对它们,可以直接引用。
表1 一些特殊的属性

对象名 含义
ActiveWorkbook 当前工作簿,即如果你打开了几个Excel文件,那么你当然正在编辑的Excel文件即ActiveWorkbook
ActiveSheet 当前工作簿中的当前工作表,即当前编辑的Excel文件中正在编辑的工作表
ActiveCell 当前工作表中活动单元格
ActiveChart 当前工作簿中的活动图表
Selection 当前被选定的对象

下面详谈各对象及它们的属性和方法

一、Application对象

此对象指Excel应用程序的工作环境。
<一>属性
1.Caption属性
含义:Excel应用程序标题栏显示的文本。
举例:Application.caption=“船员管理系统”,如赋值Empty,则恢复Excel默认的标题栏。
2.Cursor属性
含义:Excel中鼠标的形状。
表2 Cursor属性
属性值 鼠标形状
xlDefault 缺少型值,鼠标呈缺少形状
xlWait 等待型值,鼠标呈不断翻转的沙漏形状
xlNorthwestArrow 箭头型值,鼠标呈标准箭头形状
xlIBeam 文本型值,鼠标呈“I”字形以等待用户输入文本
操作:Application.Cursor=xlWait等。
3、DisplayAlerts属性
含义:用以确定是否显示系统的应用提示和警告信息,如果不想显示,则把些属性设为false,反之亦然。
4、DisplayFormulaBar属性
含义:用以确定是否显示公式编辑栏
5、DisplayScrollBars属性
含义:用以确定是否显示Excel的滚动条
6、DisplayStatusBar属性
含义:用以确定是否显示Excel的状态栏
7、EnableCancelkey属性
含义:用以确定是否允许用户中断正在执行着的VBA程序。缺省情况下,在VBA程序执行过程中,用户按下Ctrl+Break能够中断VBA程序的执行。此时此属性即值为xlInterrupt。若要禁止中断VBA程序,由赋值为xlDisabled;若需要VBA执行过程中遇到错误进中止,由赋值为xlErrorHandler
8、ScreenUpdating属性
含义:用以确定是否显示VBA程序的中间运算结果。
9、StatusBar属性
含义:设置状态栏的文本
10、ActiveWorkbook属性
含义:如表1介绍。
11、ActiveSheet
含义:如表1介绍。
12、ActiveCell属性
含义:如表1介绍。
13、ThisWorkBook属性
含义:用以返回正在执行着VBA程序所在的工作簿对象。这不是当前工作簿。例如有多个工作簿打开时,ActiveWorkbook属性返回当前工作簿对象,ThisWorkbook返回正在运行着VBA程序所在工作簿对象。
14、PathSeparator属性
含义:返回文件文件路径分隔符“\”,该属性是一个只读属性。
举例:Dim strPath as String
strPath=Application.ThisWorkbook.Path&Application.PathSeperator
Workbooks.Open strPath&"myExcel.xls"
15、UserName属性
含义:设置当前用户名称。缺省用户是由Excel选项对话框的“常规”选项卡中“用户姓名”决定的。用户可以从“工具”菜单中选择“选项”命令来打开选项并在“常规”选项卡的“用户姓名”文本框中重新设置缺省的用户名称。
<二>方法
1、Calculate方法
含义:对Excel打开的工作簿中所有的公式进行重新计算。
2、Goto方法
含义:选择工作簿中的一个Range对象或一个VBA过程,格式如下:
Application.Goto Reference,Scroll
Reference参数表示Goto方法的目的地,Scroll参数若为True,滚动条滚动以使Range对象出现在工作簿窗口左上角,为False,当前工作簿窗口不属性变化。缺省值为Galse
举例:Application.Goto Range("C3"),True
3、InputBox方法
含义:用于打开一个输入对话框,允许用户输入数据。格式如下:
Application.InputBox(prompt,title,left,top,helpFile,helpContextID,type)
prompt参数 用于设置输入对话框的提示信息
title参数 用于设置输入对话框的标题文字
default参数 用于设置输入对话框的缺省输入值
left和top参数 用于设置输入对话框左上角的坐标值
helpFile参数 用于设置输入对话框在线帮助的名称
helpContextID参数 用于设置输入对话框在线帮助主题的上下文标识号
type参数 用于设置输入对话框输入数据的类型。缺省情况下,为文本型
举例:UserValue=Application.InputBox("请输入数据","数据输入",Type:=7)
4、Onkey方法
含义:按下某个或组合键时执行一段VBA代码。自己尝试一下就知道了,也可看一下VB编辑器的提示(即输入Applicatio.Onkey后,VB编辑器弹出的下拉提示。
二、Workbooks对象集
当前所有打开的工作簿对象的集合
<一>属性
1、Count属性,只读,返回Excel打开的工作簿数
<二>方法
1、Add方法,向工作簿对象集中一个新的工作簿,相当于“文件->新建”命令。格式如下:
Workbooks.Add Template
2、Open方法,打开一个指定的工作簿。格式看一下VBA编辑器中的提示就行,太累了,不想写得这么全。
3、Close方法,关闭一个工作簿文件
三、Workbook对象
代表一个独立的工作簿文件
<一>属性
1、ActiveSheet属性,返回当前工作簿中的活动工作表对象
2、Author属性,返回或设定工作簿的作者姓名,由此确定工作簿的所有者
3、Saved属性,用于瓢工作簿文件是否做过修改。
<二>方法
1、Activate方法,用于霜一个工作簿为当前活动工作簿,如,Workbooks("myOffice.xls").Activate
2、Close方法,用于关闭指定的工作簿
3、Save方法,用于保存指定的工作簿
4、SaveAs方法,用于另存为指定的工作簿
四、Worksheets对象集
代表当前工作簿所有的工作表(Worksheet)的集合。
<一>属性
1、Count属性,返回当前工作簿中的的工作表的数量
<二>方法
1、Add方法,向工作表对象集中添加一个新的工作表对象,格式如下:
Worksheets.Add Before,After,Count,Type
Before和After参数指哪一个工作表之前或之后插入新工作表。取值为Worksheet
如:Worksheets.Add Before:=Worksheets("Sheet2"),则相当于在Sheet2工作表之前插入了一个新的工作表
五、Worksheet对象
代表工作簿一个独立的工作表。
获取某个工作表,可以用Worksheets("办公费用"),也可以用Worksheets(3)之类的语句
<一>属性
1、Name属性,设置或返回工作表对象的名称
2、Visible属性,确定是否隐藏某个工作表
<二>方法
1、Calculate法,对指定的工作表中的所有公式进行重新计算
2、Copy方法,用于复制指定的工作表,并放置在指定的位置,实际是一个复制与粘贴并重的函数,
格式:Worksheet-Object.Copy Before,After
如Worksheet("Sheet2").Copy After:=Worksheets("办公费用"),相当于把Sheet2工作表复制,并把它放置在名为“办公费用”的工作表之后
3、Move方法,移动指定的工作表并放置在指定的位置,用户同Copy方法,区别只天于复制与剪切之不同
4、Delete方法,无参数删除指定的工作表,如Worksheet("Sheet2").Delete
5、Cell方法,获取指定工作表指定行列的某个单元格
格式:Worksheet-Object.Cells(Row,Col),Row,Col为整型,行列值都从1开始
如Worksheet("Sheet2").Cell(1,1),相当于获取Sheet2工作表的第一行第一列的单元格
五、Range对象
代表一个半桥区域,可以由多个半桥组成,也可是由一个单元格组成。
引用单元格可用以下两种方法:
一是使用单元格引用,如Range("A1"),Range("A1:C3")
二是使用单元格区域名称,如Range("myRange")。
<一>属性
1、FormulaR1C1属性,为指定的单元格或单元格区域建立和存储公式,
如Range("C5").FormulaR1C1="=SUM(R[-4]C:R[-1]C)"
2、Value属性,为指定的单元格或单元格区域赋值,如为多个单元格,则都赋为同样的值
3、Cell属性,以指定的单元格为苦战来描述被引用的单元格,把指定的单元格视为第1行第1列
格式:Range-Object.Cells(Row,Col)
4、Offset,以指定的单元格为苦战来描述被引用的单元格,把指定的单元格视为第0行第0列
格式:Range-Object.Cells(Row,Col)
5、Name属性,返回或设定指定的单元格或单元格区域的名称,然后在VBA中,可以直接用名称为引用它
6、Count属性,返回指定的单元格区域中包含的单元格的数目,只读
7、CurrentRegion属性,返回以某个单元格为基点的存储有数据的一个连结的单元格区域
<二>方法
1、Select方法方法,用于选择指定的单元格区域,执行后,该单元格区域左上角的第一个单元格成为活动单元格
如Range("A1:C3").Select,Range("A1:C3,D5:E6,A8:E8).Select
2、Activate方法,用于选择指定的单元格并指定其成为活动单元格,当然只有该单元格区域左上角的第一个单元格成为活动单元格。
3、AutoFit方法,调整选定的单元格区域所在行和列的行高与列宽,使其行高与列宽自动设定的最佳的高度与宽度。
如:Range("A4").CurrentRegion.Select
Selection.Rows.AutoFit
4、Clear方法,清除指定的单元格区域的内容,格式和批注,相当于“编辑->清除->全部”
如:Range("A4:C5").Clear
5、ClearContents方法,清除指定的单元格区域的内容,相当于“编辑->清除->内容”
6、ClearFormats方法,清除指定的单元格区域的内容,相当于“编辑->清除->格式”
7、ClearComments和ClearNotes方法,清除指定的单元格区域的内容,相当于“编辑->清除->批注”
8、Copy方法,将指定单元格区域中的数据库复制到剪贴板或指定的目的单元格区域中
9、Cut方法,将指定单元格区域中的数据库剪切到剪贴板或指定的目的单元格区域中
10、PasteSpecial方法,用于将剪贴板中复制或剪切下来的单元格区域中的数据库有选择地粘贴到指定的目的单元格区域中
格式:Range-Object.PasteSpecial Paste,Operation,ShipBlanks,Transpose
Paste参数规定了选择体积类型的数据进行粘贴,如公式,内容,批注等,具体取值可参考VB编辑器中的提示

热心网友 时间:2022-06-17 02:49

看你的表格内容应该用单选框才对啊,就是窗体工具的“选项按钮”,设置选项按钮的控件格式,把值链接到别外一张单独的表上(这张表最好用,工作表,隐藏工作表,使其隐藏),这张要填的表上最好还有客房信息等方便统计,如果你知道客房的名称,最好是发给客户时把文件名命成客户名称以免重复,方便后面统计。
把表收集上来后放在一个文件夹下,在最后的总表统计里用Excel自带的,数据,合并计算就可以统计了,但你300多个表这样还是比较麻烦,去下载个"报表汇总之星"的加截宏处理起来就非常非常快了!超级加载宏下载地址:http://ishare.esnai.com/view/46151.aspx 里面就有!

热心网友 时间:2022-06-17 02:50

首先各个客户编辑的不是同一个文件,关键是如何把结果统计到一起

如果客户很多,不能一个个打开来看
Excel的VBA可以实现或者VBScript脚本都可以实现不打开Excel读取Sheet内容
获取各个文件利用
Set fso = CreateObject("Scripting.FileSystemObject")
读取未打开Excel文件
Set fso = CreateObject("Scripting.FileSystemObject")
Set xlsApp= CreateObject("Excel.Application")
xlsApp.Visible= False
xlsApp.EnableEvents=False
xlsApp.ScreenUpdating = False
Set xlsWorkBook = xlsApp.Workbooks.Open(path & "\" & file ,True,False)
Set xlsSheet = xlsWorkBook.Worksheets("SheetName")
strValue = xlsSheet.Cells(15,38 ).Value

热心网友 时间:2022-06-17 02:50

先再每个复选框的窗体上,点右键选择“设置控件格式”,在“单元格链接”里分别选择右边的4列辅助的单元格,然后用公式 =COUNTIF(单元格链接到的区域,"True") 来进行统计,给客户时这些辅助列建议隐藏起来。

热心网友 时间:2022-06-17 02:51

汗,我没弄懂.你每行的项目已经有"非常好"到"非常差"五个选项,为什么还会要用到复选框,直接让客户选择勾

如果你希望客户在选择项下面填入符号√,可以在数据有效性中设置(在一个隐藏单元格M1输入√,选好所有客户可填项,在数据有效性中用"自定义"-"公式"-=M1),在出错警告中提示"只能输入√"(为更直观,同时在选择项插入备注)

最后的统计,就是分类统计单元格的√数量,客户表格收回来以后,先做好备份,批处理修改文件名为execl1.....execl300,再利用公式计算
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
绿豆荷叶粥所含营养素 荷叶粥怎样做营养价值极高? 桑叶荷叶粥 荷叶粥来源 小度一颗等于多少 小度小佳人等于几 人们常说的ipo是什么 什么是IPOipo给企业带来什么样的坏处什么样的好处 ipo有什么风险 企业ipo什么意义 唐河特色小吃是啥? 有多个EXCEL文件,里面表格相同,如何把里面数据累加到一个汇总表里? 请问我做的绿豆粉怎么总有些粘忽忽的?请高手指教! excel文件里面多个工作表,如何将这么多工作表的数据汇总到一个透视表? 真正的绿豆凉粉是什么颜色 有很多完全相同格式的EXCEL表格,要把其中每个相同的格中数据进行汇总,如何处理? 如何挑选凉粉 如何把多个相同格式的Excel表格数据统计到一个表中 如何把多个Excel文件里的同类数据处理后汇总到新Excel文件? 空调外机风扇不转 会影响制冷吗 美的空调开机制冷外机风扇不转,制热时转,是什么情况? 如何统计多个excel文件总共有多少行数据? EXCEL统计多个文件表格里的数据 空调室外机风扇不转压缩机运行这是什么原因? excel统计多个EXCEL文件的数据 空调室外机风扇为什么不转? excel 多个sheet页数据统计? excel统计多个文件的数据 空调不制冷主机风扇不转? 我现在有一个全款的门面和一套按揭的房子,现在能不能按一个人的名义二去贷款 子长的特色小吃是什么? Excel表格里怎么把多页的不同格式相同数据统计出来 请问河北有什么特产呢? Excel怎么将两个文件中的对应数据整合 凉拌菜的种类 河南新乡有什么特色美食? 什么是凉拌菜 焦作特色美食有哪些? 丹东有什么特色小吃? 陕西的特色小吃有哪些? 急求 pdf的文件怎样复制粘贴? 知道者请将具体的做法发到 zhanghong8621618@126.com 感激不尽! 糖尿病人能吃鸡精和味精等作料吗? 河北有什么特色美食? 延安有什么好吃的 延安十大特色美食小吃推荐 缺钱啊,有没有哪里能贷款的,我是学生,急缺两万块钱,有什么办法能贷到 学生在哪里可以贷到款,急用啊 我是在校学生,现在急需用钱 5000 请问哪里可以贷到, 急!!急!! 学生可以在哪里借款???急急急 学生从哪里可以借钱? 在校大学生遇到急需用钱的情况,哪里可以贷款