Day01:VBA和Python入门
工作中免不了加班,提高办公自动化水平是减少加班的有效手段。本文开始跟随【IT蜗壳教学】一起打卡学习办公自动化,期待一个不一样的我~~~
VBA入门
以前对VBA是有一些抵触的,一直感觉VBA代码晦涩难懂,前几天听了 的直播讲解,感觉还好。
环境配置
VBA编码环境配置简单,只要打开 EXCEL ,按 Alt + F11 快捷键就可以调出VBA编辑界面了,如下图

双击红色区域打开代码编辑区

小试牛刀
自定义方法定义
程序代码需要写在一个方法中,自定义方法定义如下:
Sub my_func()
'这个区域写程序代码
End Sub
一个完整的VBA代码程序包含对象定义、对象赋值、对象的调用及展示,VBA 中使用对象之前需要先进行定义:
Sub my_func()
'对象定义
Dim my_str As String '字符型对象
Dim my_num As Integer '数字型对象
'对象赋值
my_str = "hello world"
mu_num = 100
'对象的调用及展示
MsgBox my_str
MsgBox mu_num
End Sub
点击左上方的绿色小箭头,即可看到 excel 界面弹出的消息框。

此时,按 Ctrl + s 快捷键保存文件时,弹出如下对话框

点击“是”,文件保存为未启用宏的工作簿,刚才写的代码全部丢失(如果写了很多代码没有保存真是太惨了)
点击“否”,保存为 Excel 启用宏的工作簿(*.xlsm),即可保存VBA代码
批量注释方法:
右击VBA代码编写环境右上方处,勾选【编辑】,将【编辑】框拖动到上方的工具栏,编辑栏即可找到批量注释的快捷按钮。
每次运行结果呈现在 excel 中,代码在VBA窗口编写太不方便了,推荐使用 方法进行调试,依次点击 即可调出立即窗口(用于返回程序的运行结果)。点击运行即可看到如下运行结果:

代码调试时,让程序运行下一条的快捷键是 。
for 循环
VBA 方法直接是可以相互调用的,只要在主函数中加入自定义方法即可。
字符串和变量拼接需要使用 符号

在程序入参处定义数据类型的代码如下:
Sub main()
For i = 1 To 10
my_func (i)
Next
End Sub
Sub my_func(ByVal my_num As Integer)
Debug.Print "现在的数字是:" & my_num
End Sub
while 循环
while 语句示例结构,需要特别注意的是:一定要避免出现死循环,否则书写的代码有可能全部丢失
'case while
Sub main()
Dim i As Integer
Do While i < 10
i = i + 1
Debug.Print i
Loop
End Sub
while 语句中还可以加入 if 判断,比如:输出1~10内的奇数
'case while
Sub main()
Dim i As Integer
Do While i < 10
If i Mod 2 = 1 Then
Debug.Print i
End If
i = i + 1
Loop
End Sub
作业01
1. 计算1至100的和,结果打印出来。
Sub main()
Dim i As Integer
Dim j As Integer
j = 0
For i = 1 To 100
j = i + j
Next
Debug.Print j
End Sub
2. 打印1至100的奇数,结果打印出来。
Sub main()
Dim i As Integer
Do While i < 100
If i Mod 2 = 1 Then
Debug.Print i
End If
i = i + 1
Loop
End Sub
3. 创建两个方法,依次调用,A调用B,B调用C。
Sub fx_a()
fx_b
End Sub
Function fx_b()
Debug.Print "此时,A正在调用B"
Debug.Print "*******************************************************************"
fx_c
End Function
Function fx_c()
Debug.Print "B运行时,又调用了C"
End Function
VBA 文件地址:
Python入门
python环境使用 ,搭建过程不再赘述。
小试牛刀
python 变量使用之前无序定义数据类型,便可直接使用,这是和VBA的不同之处
my_str = 'hello wolrd'
my_num = 100
print(my_str)
print(my_num)
for 循环
for i in range(0, 10):
print(i)
while 循环
i = 0
while i < 10:
print(i)
i = i + 1
作业01
j = 0
for i in range(1, 101):
j = i + j
i = i + 1
print(j)
for i in range(1, 101):
if i % 2 == 1:
print(i)
i = i + 1
python 方法调用需要注意:一定要先定义再调用,否则会报错。
def fx_c():
print("B运行时,又调用了C")
def fx_b():
print("此时,A正在调用B")
print("*******************************************************************")
fx_c()
def fx_a():
fx_b()
fx_a()
本次的学习就到这里了,下次继续。