最好的文件管理軟件推薦:電腦文件管理軟件哪個好

No.1

VBA用於文件管理,並不是被大多數人熟知,通過Excel進行文件操作也是一件說難不難,說容易並不容易的事兒。

本節介紹一下如何對電腦文件進行複製、移動、刪除、等操作。

VBA如何進行文件管理,一個對象解決所有問題

首先認識一個對象。

File對象,翻譯過來就是文件對象。

可以對文件進行複製、刪除、移動、修改等等各種操作,並且可對提取文件的屬性。

下圖為對象的方法以及屬性,要重點記住,對文件進行操作十分重要。

VBA如何進行文件管理,一個對象解決所有問題

No.2

示例

對於文件操作,首先要對文件系統有一個初步了解,如果不清楚文件系統包含哪些內容,那麼建議別學File對象,真的很難。

如果對Dos系統或Linux系統,熟練應用文件操作,那麼學習File對象就十分簡單了。

下圖是圍繞File對象做出了一個示例,包含了大多數方法應用和屬性提取,如果完全掌握,那麼就對文件對象操作有了一個很全面的認識。

VBA如何進行文件管理,一個對象解決所有問題

左側按鈕分別執行不同的功能。

右側表格是提取某個文件之後列出其文件信息,如創建日期目錄地址等等屬性。

下圖為執行過程中選擇文件對話框。

VBA如何進行文件管理,一個對象解決所有問題

No.3

代碼

如何創建File對象

Dim fs, f
    Set fs = CreateObject("scripting.FileSystemObject")
    Set f = fs.GetFile(FileName)

定義兩個變量,分別給變量賦值。

變量fs為定義的FileSystemObject對象提供對計算機文件系統的訪問權限,變量f返回一個Files對象。

其中FileSystemObject是一個重要的文件系統管理對象,也可以實現對文件的操作,但是其方法實在太多,本節不做介紹。

重點看一下其下的GetFile方法,此方法將返回一個File對象,也就是本節的主要內容。

變量f就是要進行各類文件操作的File對象。

VBA如何進行文件管理,一個對象解決所有問題

函數:返回一個File對象

Public Function GetFileObject() As Object '取文件返回File對象
    Dim FileName As String
    With Application.FileDialog(msoFileDialogFilePicker)
        If .Show = -1 Then
            .Filters.Clear
            .Filters.Add "文本文件", "*.txt"
            .Title = "選擇文件"
            FileName = .SelectedItems(1)
        Else
            Set GetFileObject = Nothing
            Exit Function
        End If
    End With
    Dim fs
    Set fs = CreateObject("scripting.FileSystemObject")
    Set GetFileObject = fs.GetFile(FileName)
    Set fs = Nothing
End Function

上述函數將返回一個File對象,代碼執行後將打開一個文件選擇器,選擇一個文本文件後返回被選文件對象,如果不選擇文件就返回一個空對象。

提取文件信息

Private Sub GetFileinfo() '提取文件信息
    Set f = GetFileObject'調用提取File對象函數
    If f Is Nothing Then GoTo Ex100'如果對象是Nothing退出
    Dim sh As Worksheet, cell As Range, xcell As Range
    Set sh = ActiveSheet
    Set cell = sh.Range("C4:C15")
    Dim infoArr(0 To 11), i As Integer
    For i = 0 To cell.Rows.Count
        Select Case i
            Case 0
                    infoArr(0) = f.Attributes'文件屬性
            Case 1
                    infoArr(1) = f.datecreated'創建日期
            Case 2
                    infoArr(2) = f.datelastaccessed
            Case 3
                    infoArr(3) = f.datelastmodified
            Case 4
                    infoArr(4) = f.drive'驅動器
            Case 5
                    infoArr(5) = f.Name'文件名
            Case 6
                    infoArr(6) = f.parentFolder
            Case 7
                    infoArr(7) = f.Path'文件路徑
            Case 8
                    infoArr(8) = f.shortname
            Case 9
                    infoArr(9) = f.shortpath
            Case 10
                    infoArr(10) = f.Size'文件大小
            Case 11
                    infoArr(11) = f.Type'文件類型
        End Select
    Next i
Set cell = cell.Item(1).Offset(0, 2).Resize(cell.Rows.Count, 1)
    cell = Application.WorksheetFunction.Transpose(infoArr)
Ex100:
    Set f = Nothing
End Sub

完全理解並學會上面的代碼,就對文件操作有一個基本認識了,在實踐過程中繼續學習,很快就會熟悉操作計算機內的文件信息。

製作一個文件管理系統就可以大顯身手了。

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/225423.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-09 14:44
下一篇 2024-12-09 14:44

相關推薦

發表回復

登錄後才能評論