xlogI125’s blog

パソコン作業を効率化したい

ファイル名

Excel VBA: フォルダ内にあるファイルのパスを取得

Get-ChildItemコマンドレットの結果をクリップボード経由でワークシートに貼り付けたほうが早いけど、Excel VBAを使用しての方法を考える。 # PowerShell 5.1, Windows 11 (2024年4月頃) $fileInfos = Get-ChildItem -File -Force -Recurse -Depth 1 -Litera…

Excel VBA練習 WshShell.Exec("PowerShell -Command -")でファイル一覧を取得

メモ FileInfo.DirectoryNameプロパティ相当のつもりで Convert-Path -LiteralPath $_.PSParentPath を使用 Group-Object でグループ化したオブジェクトを List<GroupInfo>.Sort で並べ替え 使い捨てマクロ ファイル名"PowerShell.exe"の検索順序は気にしない ' Excel 2</groupinfo>…

GetDetailsOfメソッドでファイルの詳細を取得 2

メモ GetDetailsOfで取得した文字列に含まれる '[\p{Cc}\p{Cf}]' を '' に置換 ディレクトリパスをInteraction.InputBoxのテキストボックス部分に入力 参考資料リンク Character Classes in .NET Regular Expressions | Microsoft Learn Folder.GetDetailsOf…

Rename-Itemコマンドの入力準備をExcelシートで行う 2

メモ Excelシート例 使い捨てスクリプト 参考資料リンク 過去記事 メモ Sort-Objectコマンドレットでファイル名を並べ替えた場合の順位を併記 文字列を数式の一部として扱うことでExcelシートへの貼り付け時(G/標準)に文字列が変化しないようにした Excelシ…

GetDetailsOfメソッドでファイルの詳細を取得

メモ 画像ファイルにおける ビットの深さ などを取得する。 参考資料リンク Folder.GetDetailsOf method (Shlobj\_core.h) - Win32 apps | Microsoft Learn IShellFolder2::GetDetailsOf (shobjidl_core.h) - Win32 apps | Microsoft Learn Shell object (Sh…

Rename-Itemコマンドの入力準備をExcelシートで行う

ショートカットアイコンにドラッグ&ドロップされたファイルが入っているフォルダのファイル一覧をExcelシートに出力して保存する。 メモ Rename-Item -LiteralPath 'C:\tmp\[A-Z]\A[123].txt' -NewName 'B4.txt' 単一引用符を使うのでパスに ' が含まれる場…

Get-ChildItem -File の BaseName, Extension をCSV形式でクリップボードにコピー

メモ Rename-Itemに使用する文字列の生成をExcelワークシートで行う場合を想定 参考資料リンク about PSCustomObject - PowerShell | Microsoft Learn https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1.sort?view=netframew…

PowerShell練習 Add-Type (StrCmpLogicalW) 3

メモ 現在のフォルダ内にあるファイル名を StrCmpLogicalW と List<T>.Sort(Comparison<T>) でソートして取得 参考資料リンク 型パラメーターの制約 - C# プログラミング ガイド | Microsoft Docs https://docs.microsoft.com/en-us/dotnet/api/system.collections</t></t>…

PowerShell練習 Add-Type (StrCmpLogicalW) 2

目次 目次 使い捨てスクリプト 現在のフォルダ内にあるファイル名をソートして取得 クリップボード内のテキストをソート 過去記事 使い捨てスクリプト 現在のフォルダ内にあるファイル名をソートして取得 このスクリプトを起動させるショートカット(.lnk)をS…

PowerShell練習 Add-Type (StrCmpLogicalW)

メモ 自然順ソートとして StrCmpLogicalW を DllImport して Add-Type で加える ソートは List.Sort メソッドかバブルソート 参考資料リンク StrCmpLogicalW function (shlwapi.h) - Win32 apps | Microsoft Docs Working with Strings - Win32 apps | Micro…

Excelでファイル名を変更したい 3

メモ 同じフォルダ内にある大量のファイルに対して、ある程度の融通を利かせてリネームしたい場合に便利かもしれません。Excelでマクロを使うよりも、PowerShellの実行結果をExcelシートに貼り付けて加工するほうが作業的に早い気もします。 使い捨てマクロ …

Excelでファイル名を変更したい 2

メモ 下記の動作を行うPowerShellスクリプトです。 Get-ChildItemのBaseName、Extension、NameプロパティをExcelシートに書き出す ExcelシートでRename-Itemの文字列を生成する セキュリティソフトによっては、日本語のファイル名を対象に多くのRename-Item…

Excelでファイル名を変更したい

大量のファイルに対して、ある程度の融通を利かせてリネームしたい場合に便利かもしれません。例えば新版PDFと旧版PDFのページを1つのPDFに交互に並び替えたい場合に役立つと思います。 ・PDF編集ソフトでPDFのページを分割 ・分割されたPDFのファイル名を調…