EXCEL VBA 获取文件夹及子文件夹下所有文件并建立超链接

(1)首先,楼主先新建一个excel,名称楼主自己写,怎样都行,然后将其打开。

(2)打开后按住Alt再按F11,这样就会打开vba代码编辑器

(3)点菜单栏上的“插入”,选择“模块”,这样在左下角就会出现一个“模块1”

(4)双击“模块1”,右边就会出现“模块1”的编辑界面,将以下代码复制,并粘贴到这个界面中,按F5运行。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

Sub 遍历文件夹()

'Columns(1).Delete  

On Error Resume Next

Dim As String

Dim file() As String

Dim i, k, x

x = 1

i = 1: k = 1

ReDim file(1 To i)

file(1) = InputBox("请输入要查找的文件夹:") & "\"

Do Until i > k

    f = Dir(file(i), vbDirectory)

        Do Until f = ""

            If InStr(f, ".") = 0 Then

                k = k + 1

                ReDim Preserve file(1 To k)

                file(k) = file(i) & f & "\"

            End If

            f = Dir

        Loop

    i = i + 1

Loop

For i = 1 To k

    f = Dir(file(i) & "*.*")

    Do Until f = ""

       'Range("a" & x) = f

       Range("a" & x).Hyperlinks.Add Anchor:=Range("a" & x), Address:= _

        file(i) & f, TextToDisplay:=f

        x = x + 1

        f = Dir

    Loop

Next

End Sub

(5)在出现的对话框中,将你要查找的文件的地址复制到对话框中,按确定,就完成了。

注:这里用的是excel2007版,如果楼主用的是其他版本,有可能存在代码不兼容问题。

图1.打开vba编辑器。

图2.运行代码。

图3.结果。

猜你喜欢

转载自blog.csdn.net/WASEFADG/article/details/89511063