遍历excel文件

最近写pl/sql,有表定义什么的,又要用vba作工具
我每次写都在网上查如何用vba遍历excel, 很麻烦
今天把以前写的例子整理下来,省得每次都查
Dim intX As Integer
Dim intYBook As Integer
Dim intYSheet As Integer

Sub CreateLink()

    Dim fs, f, f1, fc, s, file
    Dim TargetFolder As String
   
    intX = 1
    intYBook = 1
    intYSheet = 2
               
    TargetFolder = ThisWorkbook.Path

    ChDir TargetFolder
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.GetFolder(TargetFolder)
    Set fc = f.Files

    Range("A1:C2000").Clear
   
    For Each f1 In fc
        If f1.Name <> ThisWorkbook.Name Then
            If InStr(f1.Name, ".xls") <> 0 Then
                GetAllSheet (f1.Name)
            End If
        End If
    Next

 

End Sub


Sub GetAllSheet(FileName As String)

Cells(intX, intYBook).Value = FileName

intX = intX + 1

    Workbooks.Open ThisWorkbook.Path + "/" + FileName
   
    For i = 1 To Workbooks(FileName).Sheets.Count
       Workbooks(ThisWorkbook.Name).Sheets(1).Cells(intX, intYSheet).Value = Workbooks(FileName).Sheets(i).Name
       Workbooks(ThisWorkbook.Name).Sheets(1).Activate
        Workbooks(ThisWorkbook.Name).Sheets(1).Cells(intX, intYSheet).Select
        ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=FileName, _
        SubAddress:=Workbooks(FileName).Sheets(i).Name + "!A1"
       intX = intX + 1
    Next
    Workbooks(FileName).Close SaveChanges:=False
   
End Sub

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值