2023-04-25

メモ

Sub ImportTextFileWithoutDelimiter()

Dim fileName As String

Dim targetSheet As Worksheet

Dim fileNo As Integer

Dim content As String

Dim lines As Variant

Dim i As Long

' テキストファイルパス指定します。

fileName = "C:\path\to\your\file.txt"

' インポート先のワークシートを指定します。

Set targetSheet = ThisWorkbook.Worksheets("Sheet1")

' ファイルを開き、内容を読み込みます

fileNo = FreeFile()

Open fileName For Input As fileNo

content = Input(LOF(fileNo), fileNo)

Close fileNo

' 改行で分割し、配列に格納します。

lines = Split(content, vbCrLf)

' 各行をワークシートに貼り付けます

For i = LBound(lines) To UBound(lines)

targetSheet.Cells(i + 1, 1).Value = lines(i)

Next i

End Sub

Option Explicit

Sub ListFilesInFolder()

Dim folderPath As String

Dim targetSheet As Worksheet

Dim fso As Object, folder As Object, file As Object

Dim nextRow As Long

' フォルダパス指定します。

folderPath = "C:\path\to\your\folder"

' インポート先のワークシートを指定します。

Set targetSheet = ThisWorkbook.Worksheets("Sheet1")

' FileSystemObject作成します。

Set fso = CreateObject("Scripting.FileSystemObject")

Set folder = fso.GetFolder(folderPath)

' ヘッダーを書き込みます

With targetSheet

.Cells(1, 1).Value = "File Name"

.Cells(1, 2).Value = "File Size"

.Cells(1, 3).Value = "Timestamp"

End With

' 次の行番号を取得します。

nextRow = 2

' フォルダ内のファイル情報を取得し、ワークシートに書き込みます

For Each file In folder.Files

With targetSheet

.Cells(nextRow, 1).Value = file.Name

.Cells(nextRow, 2).Value = file.Size

.Cells(nextRow, 3).Value = file.DateLastModified

End With

nextRow = nextRow + 1

Next file

' オブジェクト解放します。

Set fso = Nothing

Set folder = Nothing

Set file = Nothing

End Sub

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん