Excel VBA一些操作语法
程序员文章站
2022-07-03 21:02:49
...
楼主学Java之前是学Excelvba的。现在有空就记录一些操作的语法
'循环文件夹下面的文件
Sub loopFile()
Dim file As String
'查找某路径下面所有的txt文档并弹出文件名
file = Dir("C:\Users\星驰太帅了\Desktop\excel\*.txt")
MsgBox file
'如果文件名不为空代表还有文件,那么就一直循环
Do While file <> ""
'第二次不需要再填写路径,要不然会造成死循环
file = Dir
'再判断一下,免得当为空时还做了操作
If file = "" Then Exit Do
MsgBox file
Loop
'结束语提示
MsgBox "end"
End Sub
顺便说一下 Debug.Print "content" 会把 content 打印到立即窗口中
'获取指定文件夹下面所有子文件夹的名称
Sub loopPath()
Dim fso, f, n&
Set fso = CreateObject("Scripting.FileSystemObject")
For Each floder1 In fso.GetFolder("C:\Users\星驰太帅了\Desktop\excel").SubFolders
MsgBox floder1.Name
Next
End Sub
获取文件夹下面的所有文件夹第一层目录下面的所有文件,多层子目录可以用递归
'循环文件夹下面的文件
Sub loopFile()
Dim file As String
'查找某路径下面所有的txt文档并弹出文件名
file = Dir("C:\Users\星驰太帅了\Desktop\excel\*.txt")
Debug.Print "根文件下面的文件 " & file
'如果文件名不为空代表还有文件,那么就一直循环
Do While file <> ""
'第二次不需要再填写路径,要不然会造成死循环
file = Dir
'再判断一下,免得当为空时还做了操作
If file = "" Then Exit Do
Debug.Print "根文件下面的文件 " & file
Loop
'调用函数
loopPath
'结束语提示
Debug.Print "end"
End Sub
'获取指定文件夹下面所有子文件夹的名称
Function loopPath()
Dim fso, f, n&
Set fso = CreateObject("Scripting.FileSystemObject")
For Each floder1 In fso.GetFolder("C:\Users\星驰太帅了\Desktop\excel").SubFolders
For Each f In floder1.Files
Debug.Print floder1.Name & "文件夹下面的" & f.Name
Next
Next
End Function
批量修改文件夹下面所有xlsx文件的第一个单元格的值
'循环文件夹下面的文件
Sub loopFile()
'出错时直接跳到完成
On Error GoTo 100
Dim file As String
Dim basePath As String
basePath = "C:\Users\星驰太帅了\Desktop\excel\"
'忽略修改警告
Application.DisplayAlerts = False
'查找某路径下面所有的txt文档并弹出文件名
file = Dir("C:\Users\星驰太帅了\Desktop\excel\*.xlsx")
a = setValue(basePath, file, "zxc")
Debug.Print "根文件下面的文件 " & file
'如果文件名不为空代表还有文件,那么就一直循环
Do While file <> ""
'第二次不需要再填写路径,要不然会造成死循环
file = Dir
'再判断一下,免得当为空时还做了操作
If file = "" Then Exit Do
a = setValue(basePath, file, "zxc")
Debug.Print "根文件下面的文件 " & file
Loop
'结束语提示
Debug.Print "end"
'重新开启警告
Application.DisplayAlerts = True
100:
MsgBox "修改完成"
End Sub
'设置传入的工作薄地址第一个sheet表第一个单元格的值为 value, 设置完就关闭该工作薄
Function setValue(basePath, worksPath, value)
filePath = basePath & worksPath
With Workbooks.Open(filePath)
.Sheets(1).Range("a1") = value
.Save '修改完需要保存文件
.Close
End With
End Function
暂时先记录这些,有空再继续更新!!!毕竟现在学的是java,这个只是无聊为了回顾一下
推荐阅读
-
Excel VBA连接并操作Oracle
-
Excel VBA连接并操作Oracle
-
Excel VBA操作Outlook 发送邮件实例可设置附件收件人等
-
录制宏简化重复操作VBA可能会更快一些但功力不够
-
MySql数据库的一些基本操作---------------SQL语法
-
Excel VBA操作Outlook 发送邮件实例可设置附件收件人等
-
Excel VBA简单需求实践,包含对Excel基本的读取,校验,复写操作
-
xlwings:操作Excel,通过宏调用Pyhton(VBA调Python)
-
Excel VBA一些操作语法
-
js操作Excel,js导出Excel,如同vba操作Excel(对ie8及其以上浏览器)