Excel VBAを活用してビデオ会議の録画を日別に自動整理

Excel VBAの力を利用して、ビデオ会議の録画を日別に自動で整理する方法を紹介します。この記事では、VBAのコードからその詳細な解説、そしてさらなる応用例まで幅広くカバーします。日々の業務での録画整理の手間を大幅に減少させ、効率的な業務運営を目指しましょう。

目次

Excel VBAの基本

Excel VBA(Visual Basic for Applications)は、Microsoft Excelに組み込まれたプログラミング言語です。これを用いると、単純作業の自動化だけでなく、高度なデータ分析やレポート作成も可能になります。

そもそも、どこにVBAコードを書いて、どう実行すれば良いのか分からない場合は、以下の記事をご参照ください。

VBAを利用したビデオ会議の録画整理の基本

ビデオ会議の普及に伴い、重要な議事録やプレゼンテーションの内容を保存するための録画が増えてきました。しかし、これらのファイルは日にちやテーマごとに整理しなければ、後で探すのが難しくなります。そこでExcel VBAを利用して、これらの録画を自動で日別に整理する方法を採用します。


Sub SortRecordingsByDate()
    Dim SourceFolder As String, DestFolder As String
    Dim objFSO As Object, objFolder As Object, objFile As Object
    Dim LastRow As Long

    '元のフォルダと移動先のフォルダを指定
    SourceFolder = "C:\Path\To\Source\Folder\"
    DestFolder = "C:\Path\To\Destination\Folder\"

    'FileSystemObjectの作成
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objFolder = objFSO.GetFolder(SourceFolder)

    'ファイルをループして日付ごとのフォルダに移動
    For Each objFile In objFolder.Files
        Dim FileDate As Date
        FileDate = objFile.DateCreated
        If Not objFSO.FolderExists(DestFolder & Format(FileDate, "yyyy-mm-dd")) Then
            objFSO.CreateFolder DestFolder & Format(FileDate, "yyyy-mm-dd")
        End If
        objFSO.MoveFile SourceFolder & objFile.Name, DestFolder & Format(FileDate, "yyyy-mm-dd") & "\" & objFile.Name
    Next objFile

    Set objFile = Nothing
    Set objFolder = Nothing
    Set objFSO = Nothing
End Sub

コードの詳細解説

1. まず、録画が保存されている元のフォルダ(SourceFolder)と、移動先のフォルダ(DestFolder)を指定します。
2. FileSystemObjectを利用して、フォルダ内の全ファイルにアクセスします。
3. 各ファイルの作成日を取得し、その日付に対応するフォルダがDestFolderに存在するか確認します。
4. 存在しない場合は、その日付のフォルダを新たに作成します。
5. 最後に、各ファイルを正しい日付のフォルダに移動させます。

応用例

1. ファイル名から日付を取得して整理

ビデオ会議の録画ファイルに、日付を含む名前が付けられている場合、その名前から日付を取得して整理することも可能です。


'...(省略)...
    Dim FileDateStr As String
    FileDateStr = Mid(objFile.Name, 5, 10) ' "Meeting_2023-09-12_10am.mp4" というファイル名から日付を取得
'...(省略)...

2. 指定のフォーマットのファイルのみ整理

特定のファイルフォーマット(例: .mp4)のみを対象として整理することもできます。


'...(省略)...
    If objFSO.GetExtensionName(objFile.Name) = "mp4" Then
        '...(整理の処理)...
    End If
'...(省略)...

3. ファイルサイズでのフィルタリング

小さなファイルサイズの録画(例えば、1分未満の短い録画など)は整理から除外することも可能です。


'...(省略)...
    If objFile.Size > 10000000 Then ' 10MB以上のファイルのみ整理
        '...(整理の処理)...
    End If
'...(省略)...

まとめ

Excel VBAを利用して、ビデオ会議の録画を効率的に日別に整理する方法を学びました。この方法を取り入れることで、日常の業務の中でのファイルの整理や管理の手間を大幅に削減することができます。さらに、VBAの応用でさまざまなカスタマイズも可能です。日々の業務の効率化を図る一つの方法として、ぜひ活用してみてください。

VBAも良いけどパワークエリも良い

VBAの解説をしてきましたが、VBAは正直煩雑でメンテナンス性が悪いです。最近はモダンExcelと呼ばれるパワークエリやパワーピボットへのシフトが進んできています。本サイトでもパワークエリの特集をしており、サンプルデータを含む全11回の学習コンテンツでパワークエリを習得することができます。

クリックするとパワークエリの全11講座が表示されます。

パワーピボットの記事はありません。興味がある場合は、書籍で学んでみてください

コメント

コメントする

目次