excel vba教程完整版 vba编程入门教程
- 数据库
- 2023-09-06
- 69
大家好,今天小编来为大家解答excel这个问题,vba编程入门教程很多人还不知道,现在让我们一起来看看吧!excel怎么使用vba1、首先打开Excel软件,点击左上角...
大家好,今天小编来为大家解答excel这个问题,vba编程入门教程很多人还不知道,现在让我们一起来看看吧!
excel怎么使用vba
1、首先打开Excel软件,点击左上角的文件菜单。
2、接着选择左下角的选项菜单。
3、选择自动以功能区的开发工具。
4、点击顶部的开发工具菜单。
5、点击VisualBasic按钮。
6、最后即可打开VBA的编辑区域。
Excel:
MicrosoftExcel是Microsoft为使用Windows和AppleMacintosh操作系统的电脑编写的一款电子表格软件。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的个人计算机数据处理软件。在1993年,作为MicrosoftOffice的组件发布了5.0版之后,Excel就开始成为所适用操作平台上的电子制表软件的霸主
操控excel,选择Python还是vba
“现在已经2022年了,放弃VBA这个语言吧孩子!!“
下面介绍几种常用的python操作Excel的库。
一、用pandas库操作Excelpandas是python中做数据清洗、数据处理、操作excel文件最基础最常用的库。
官方文档:https://www.pypandas.cn/docs/getting_started/
没废话,直接讲代码!
首先,导入pandas库,并给pandas起个别名pd,后面调用直接用pd就行,少些几个字母,不是什么高级操作,完全就是因为。。。我懒!
importpandasaspd
然后,用pandas读取excel文件:
df=pd.read_excel('文件名.xlsx')
1.1查询数据
查询前三行:
df.head(3)
查询最后三行:
df.tail(3)
二、用openpyxl库操作Excel如果你不仅想用python处理Excel数据,还想改变Excel的样式:
如字体大小、字体颜色、单元格里增加下拉框、单元格设置颜色、填充颜色,甚至在Excel里画图!
openpyxl是个不错的选择!
给excel增加下拉框的demo代码:
wb=Workbook()#初始化workbook
ws=wb.active#初始化sheet页
ws.title="IMPORT_SHEET1"#设置标题
#定义下拉框(发票类型、未产生电费原因)
dv1=DataValidation(type="list",formula1='"分割单+发票复印件,16%专票+普通发票,16%专票,普通发票"',allow_blank=True)
dv2=DataValidation(type="list",formula1='"原因1,原因2,原因3,原因4,原因5"',allow_blank=True)
dv1.error='输入值不存在于下拉框选项!'#错误提示
dv2.error='输入值不存在于下拉框选项!'#错误提示
dv1.errorTitle='非法输入提示'#提示框标题
dv2.errorTitle='非法输入提示'#提示框标题
dv1.prompt='Pleaseselectfromthelist'#提示语
dv2.prompt='Pleaseselectfromthelist'#提示语
dv1.promptTitle='ListSelection'
dv2.promptTitle='ListSelection'
ws.add_data_validation(dv1)#添加下拉框
ws.add_data_validation(dv2)#添加下拉框
column_fapiao_type=("S3:S100000")#指定列范围
column_reason_type=("X3:X100000")#指定列范围
dv1.add(column_fapiao_type)
dv2.add(column_reason_type)
wb.save('test99.xlsx')#保存文件
给excel插入可视化图形的demo代码:
wb=openpyxl.load_workbook('test.xlsx')#打开excel文件
ws1=wb.worksheets[0]#选择第一个sheet页
#ws1.title="折线图"#给sheet页命名
max_row=ws1.max_row#最大行数
max_col=ws1.max_column#最大列数
#开始画图
chart=LineChart()#初始化一个折线图
chart.title=chart_title#折线图标题
chart.style=13#折线的style
chart.x_axis.title='月份'#折线图的x轴名称
chart.y_axis.title='数量'#折线图的y轴名称
x_values=Reference(ws1,min_row=2,max_row=max_row,min_col=1,max_col=1)#x轴数值范围
data_area=Reference(ws1,min_row=1,max_row=max_row,min_col=2,max_col=2)#数值区域
chart.add_data(data_area,titles_from_data=True)#给图形添加数据
chart.set_categories(x_values)#设置x轴
ws1.add_chart(chart,"A10")#把图形添加到sheet页指定单元格
print('折线图已添加')
wb.save('test2.xlsx')#保存excel文件
三、用xlwt、xlrd库操作Excelxlwt,用来写入excel文件。我猜它的fullname是:excelwriter
xlrd,用来读取excel文件。我猜它的fullname是:excelreader
他们只能用于读写2003版本以前的excel文件,即文件后缀是xls的。
#初始化excel文件
xls=xlwt.Workbook()#初始化workbook
sheet=xls.add_sheet('商铺信息')#添加sheet页
#设置字体格式
Font0=xlwt.Font()
Font0.name="TimesNewRoman"#字体名称
Font0.colour_index=2
Font0.bold=True#加粗
style0=xlwt.XFStyle()
#在指定单元格添加数据
sheet.write(0,0,'商铺名称',style0)
sheet.write(0,1,'商铺链接',style0)
sheet.write(0,2,'商铺资质(保证金)',style0)
sheet.write(0,3,'掌柜',style0)
sheet.write(0,4,'掌柜联系方式',style0)
sheet.write(0,5,'发货时间',style0)
#保存文件
xls.save('test.xls')
四、其他python库另外,除了以上三种常用python库,还有xlutils、xlwings等库,不再赘述。
码字累了,下次接着写。。
我是@马哥python说,持续分享Python干货!
excel vba 入门
excelvba的入门
学习excelvba,首先就要学会使用录制宏这个功能,这个可以解决工作中大部分问题。
其次,找一本excelvba的书,从基本语法,数字类型,基本语句(循环,数组,字典,正则,事件)慢慢积累。
最重要的要有对象思维,excelvba有EXCEL对象,Range对象,Sheet对象等等。
学会积累和修改代码,遇到比较好的代码可以收藏起来。
Excel的VBA现在还算是办公利器吗
任何一项技能,都有其存在的理由,不要因为某个人的否定而否定,尤其是在还有很多人的肯定的情况下。通常是懂A的人可能不懂B和C,懂B的人告诉你不要学A和C,而懂C的人觉得A和B没有用……
计算机专业的人告诉你python更加强大,往往是因为他自己不需要大规模应用Excel(说实话,我在软件行业和项目上碰到太多的开发大牛都不精通Excel,因为他们根本不需要用),所以,这种建议该怎么采用,自己要学会辩别。
的确,如果单纯从一门编程语言的角度来说,python是比VBA强大不止一丢丢,但是,当你日常处理数据大部分都是在Excel上时,python是强龙,VBA却是地头蛇!
所以,一样东西的强大与否不是你学不学的理由,而是哪一样更适合你的需要。
接着再看Excel内的事情,包含的技能除了日常功能、函数之外,还有VBA和现在的Power系列。现在,对于大部分的用户,我个人更加推荐Power系列的学习,优先于VBA。为此,我翻译过一段文字:
Excel公式?VBA?还是PowerQuery!大海Excel到PowerBI
最近,一直有朋友问我到底学不学VBA,我一般不建议他们学,除非对编程很感兴趣,或者本身已经有一定的编程基础,否则,将耗费大量的精力,而收效甚微。
恰巧,最近在一本比较专业的书上找到关于Excel函数、VBA以及PowerQuery在数据导入、清洗、转换方面的一些描述和对比,翻译如下,供参考:
黑魔法的好处和危险
Excel可用多种不同的技术来实现魔法般的数据处理——有时单独使用,有时组合使用。这些魔法包括:
?Excel公式——是技术人员经常利用的第一种技术,如VLOOKUP、INDEX、MATCH、OFFSET、LEFT、LEN、TRIM、CLEAN等等。虽然公式往往被大多数Excel用户使用,但公式的复杂性因用户的经验和思路差异很大。
?VisualBasic应用程序(VBA)——这种强大的语言可以实现强大而动态的数据转换。VBA技术往往被高级用户使用,需要掌握一整套的语法规则。
?SQL语句——SQL是操作数据的另一种强大的语言,特别是用于选择、排序、分组和转换数据。但是,SQL通常只被高级用户使用,甚至很多Excel专业人士都不知道该怎么去应用,SQL也通常被认为是数据库专家的独门武器,尽管每个Excel专家都应该花一点时间学一学。
所有这些工具都有一些共同点:多年来,它们基本上是唯一可用的数据清理和转换工具。尽管这些工具非常有用,但也存在两个严重的缺点:需要较长的时间来掌握技术和建立解决方案。
虽然可以使用这些工具来建立自动化的原始数据导入解决方案,但这往往需要经过多年的高级语言学习以及耗费大量的精力来进行范围界定、开发、测试和维护相应的解决方案。取决于解决方案的复杂性,数据导入格式的微小变化,或希望扩展原有解决方案来适应更多数据来源可能是一件很可怕的事情。
在公司中,有一个所谓技术大神反而是一个隐藏的危险,这个人可能会建立一套令人惊叹的解决方案,直到他离开公司很久才出现问题。然后,公司的其他人发现根本搞不懂这套方案,也就没有人能在出现问题的时候再搞定它。
另一方面,大部分负责数据整理的人没有时间或机会学习这些先神奇的技术,结果,这种崩溃后无人能修复的大系统,还不如用一些简单基础的技术来重复处理和导入数据,即使要花费几个小时、几天、几个月甚至几年的精力及成本。
但是,花点时间,想想你公司每月花费几个小时在Excel中进行重复的数据导入和清洗任务。将这些时间乘以你公司的平均工资率……以及全球范围内的公司数量……你又会发现,这个成本非常惊人。
我们希望有一个能应对以上矛盾的产品,既容易学习,其他人又容易接手并且理解障碍很少,又能实现自动的数据导入和清洗,使得你可以更加集中精力于数据的利用和增值——这个产品就是PowerQuery。
未来转变
PowerQuery解决了上述工具的相关问题。这很容易学习,有最直观的用户界面,很容易维护,因为它显示了数据导入及清洗的每一步,你可以随时查看或修改。同时,PowerQuery中所做的所有操作,都可以通过简单点击几下完成刷新。
我们花了数年时间使用黑魔法构建解决方案,但PowerQuery将改变游戏规则,原因有很多,其中之一就是学习速度。
当涉及到数据导入、清洗和转换以便分析时,您学会PowerQuery的速度比Excel公式还要快,用于处理多种复杂数据源等情况时,比VBA要容易的多。
学习曲线示意图
学习建议
总的来说,我个人的建议是:
?Excel公式当然要学,因为那是最基础也用的最多的东西。
?PowerQuery和VBA的问题上,优选PowerQuery。
?学有余力或对编程很感兴趣,再学VBA。
除了上面提到的PowerQuery,还有Powerpivot等等。你可以多点去了解。
总之,适合自己的才是最好的!
欢迎关注【Excel到PowerBI】我是大海,微软认证Excel专家,企业签约PowerBI顾问让我们一起学习,一起成长!Excel2016VBA超简单入门教程(VBA编程)
这个需要学习计算机的基础知识,还有外语(英文),因为现在编写程序主要还是运用英语。
好了,文章到此结束,希望可以帮助到大家。
本文链接:http://www.xinin56.com/su/16350.html