最近鼓捣了个工具,可以批量从固定文件夹的excel中获取同一个单元格中的具体内容(当然,你也可以根据自己的需要,进行多个单元格内容的取得)
可能这么说比较抽象,举例来说比如你在多个相同模板的excel中定义了不一样的内容,比如服务器名,ip等,但是你又不想每个文件都打开看一遍,这个时候就可以上这个道具了。
好了,废话不多说,直接上代码(整理的比较仓促,没有注释,见谅哈~不过代码也不多,应该都能看懂(*^▽^*)):
Sub 单元格文字读取()
'
' 单元格文字读取 宏
'
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Set xlApp = New Excel.Application
Dim FilePath
Set FolderDialogObject = Application.FileDialog(msoFileDialogFolderPicker)
With FolderDialogObject
.Title = "请选择要查找的文件夹"
.InitialFileName = "C:\"
End With
FolderDialogObject.Show
FilePath = FolderDialogObject.SelectedItems(1)
myfile = Dir$(FilePath & "\*.xlsx ")
Dim i As Integer: i = 1
Do While myfile <> ""
Set xlBook = xlApp.Workbooks.Open(FilePath + "\" + myfile)
Dim sheet As Excel.Worksheet
Set sheet = xlBook.Worksheets(1)
Dim str, select_cell As String
select_cell = Cells(1, 8)
str = sheet.Range(select_cell)
Range("A" & i) = myfile
Range("B" & i) = str
myfile = Dir$
i = i + 1
xlBook.Close
Loop
MsgBox ("数据取得处理结束")
End Sub
PS:上面选中哪个单元格是直接在执行VBA的excel文件中定义的,即上面的 select_cell = Cells(1, 8),没听懂的我贴个图你们看看就知道了:
取得完的数据长下面的这个样子,当然你们也可以自己再美化美化
好啦,今天的分享就到这里了,有事可以留言哈