VBA代码解读!求助大神!
大神能否帮忙解释下如下代码,谢谢!!DoWhileMyName<>""IfMyName<>AWbNameThenSetWb=Workbooks.Open(MyPath&"...
大神能否帮忙解释下如下代码,谢谢!!
Do While MyName <> ""
If MyName <> AWbName Then
Set Wb = Workbooks.Open(MyPath & "\" & MyName)
Num = Num + 1
With Workbooks(1).ActiveSheet
If Num = 1 Then
Wb.Sheets(1).UsedRange.Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)
Else
Wb.Sheets(1).UsedRange.Offset(1, 0).Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)
End If
WbN = WbN & Chr(13) & Wb.Name
Wb.Close False
End With
End If
MyName = Dir
Loop 展开
Do While MyName <> ""
If MyName <> AWbName Then
Set Wb = Workbooks.Open(MyPath & "\" & MyName)
Num = Num + 1
With Workbooks(1).ActiveSheet
If Num = 1 Then
Wb.Sheets(1).UsedRange.Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)
Else
Wb.Sheets(1).UsedRange.Offset(1, 0).Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)
End If
WbN = WbN & Chr(13) & Wb.Name
Wb.Close False
End With
End If
MyName = Dir
Loop 展开
1个回答
展开全部
这个代码的主要作用就是从一个Excel文件中拷贝数据到当前表格中。
1、首先建立一个Do While...Loop循环语句;
2、循环变量MyName不为空;
3、If判断MyName不等于AWbName的时候Set给Wb对象赋值打开该Excel文件;
4、Num变量计数加1;
5、利用With语句使代码简洁,在这段语句中凡是直接输入“.对象”的前缀都是Workbooks(1)的当前激活表格;
6、判断Num等于1;
7、如果Num等于1,那么就复制粘贴Wb这个Excel文件中的UsedRange区域,粘贴到A列的最后一个非空单元格上;
8、否则就复制UsedRange向下移动一行的这个区域粘贴过去;
9、End If判断结束;
10、给WbNum赋值;
11、关闭Wb文件,并且不保存。
AiPPT
2024-09-19 广告
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图...
点击进入详情页
本回答由AiPPT提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |