• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:(VBA)指定したMP3の曲の再生時間を書き出す)

(VBA)指定したMP3の曲の再生時間を書き出す

このQ&Aのポイント
  • MP3の「曲の長さ」を調べて指定セルに書き出すVBAコードを紹介します。
  • 単一のMP3ファイルの再生時間を指定セルに書き出す方法を解説します。
  • 以前の記事を参考に、配列を利用せずにMP3ファイルの再生時間を取得する方法を説明します。

質問者が選んだベストアンサー

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1734/2604)
回答No.2

Target = FSO.GetFile(TargetMP3).Name の前に Set Folder = SHell.Namespace(FSO.GetFile(TargetMP3).ParentFolder.Path) も変更がコピペ抜けでした。

NuboChan
質問者

お礼

kkkkkmさん、回答ありがとうございます。 おかげさまで下記コード上手く処理できました。 (各DIMは、別途記入済みです。) これで以前からセルに手動で入力していたMP3の曲の長さ(再生時間)を  自動で入力出来そうです。 ---------------------------------------------- 'Sub Mp3サイズ読み込み() TargetMP3 = Application.GetOpenFilename("MP3ファイル,*.mp3") MsgBox TargetMP3 Set FSO = CreateObject("Scripting.FileSystemObject") Set SHell = CreateObject("Shell.Application") Set Folder = SHell.Namespace(FSO.GetFile(TargetMP3).ParentFolder.Path) Target = FSO.GetFile(TargetMP3).Name Cells(20, "A") = Folder.GetDetailsOf(Folder.ParseName(Target), 27) Set Folder = Nothing Set SHell = Nothing Set FSO = Nothing End Sub

その他の回答 (1)

  • kkkkkm
  • ベストアンサー率66% (1734/2604)
回答No.1

参考にされたサイトのループを外して 該当部分だけですが Dim TargetMP3 As String TargetMP3 = "C:\Temp\N1\N2.mp3" Target = FSO.GetFile(TargetMP3).Name Cells(1, 1) = Folder.GetDetailsOf(Folder.ParseName(Target), 0) Cells(1, 2) = Folder.GetDetailsOf(Folder.ParseName(Target), 27)

関連するQ&A

専門家に質問してみよう