Power Automate DesktopでExcelシートをその日のファイル名でCSV出力する
OfficeスクリプトでExcelシートの必要項目を書式補正して転記するの続きです。転記したシートを、PADを使って20240828test.csv
といったその日の日付を使った名前のCSVへ書き出すにはどうすればいいかな~ってやってみた結果をまとめておきます。
参考
やりたいのは、「その日のファイル名で」出力です。以下のサイトで紹介されている方法を組み合わせて使わせてもらいました! すごいわかりやすくてありがたいです~!!
- Power Automate Desktop ExcelファイルをCSVファイルに変換して保存 | 誰でもできる業務改善講座
- Power Automate Desktop フォルダー名・ファイル名に今日の日付を入れる方法 | 誰でもできる業務改善講座
コピペ用コード
PADって作ったフローをコピペで使えるんですね! すごい便利! 私も、前述のサイトさんから使わせてもらって、組み合わせたものをここに置いておきます。
Excel.LaunchExcel.LaunchAndOpenUnderExistingProcess Path: $'''C:\\Sample\\sample.xlsx''' Visible: False ReadOnly: False Instance=> ExcelInstance Excel.SetActiveWorksheet.ActivateWorksheetByName Instance: ExcelInstance Name: $'''export''' Excel.GetFirstFreeColumnRow Instance: ExcelInstance FirstFreeColumn=> FirstFreeColumn FirstFreeRow=> FirstFreeRow Excel.ReadFromExcel.ReadCells Instance: ExcelInstance StartColumn: 1 StartRow: 1 EndColumn: FirstFreeColumn - 1 EndRow: FirstFreeRow - 1 ReadAsText: False FirstLineIsHeader: False RangeValue=> ExcelData Excel.CloseExcel.Close Instance: ExcelInstance DateTime.GetCurrentDateTime.Local DateTimeFormat: DateTime.DateTimeFormat.DateAndTime CurrentDateTime=> CurrentDateTime Text.ConvertDateTimeToText.FromCustomDateTime DateTime: CurrentDateTime CustomFormat: $'''yyyyMMdd''' Result=> FormattedDateTime File.WriteToCSVFile.WriteCSV VariableToWrite: ExcelData CSVFile: $'''C:\\Sample\\%FormattedDateTime%test.csv''' CsvFileEncoding: File.CSVEncoding.UTF8 IncludeColumnNames: False IfFileExists: File.IfFileExists.Overwrite ColumnsSeparator: File.CSVColumnsSeparator.SystemDefault
利用
上記のコードをコピーしてもらって、新しく作ったフローへ貼り付けます。
このようになります。
このフローは、C:\Sample\sample.xlsx
のexport
というシートを、その日の日付+test.csvというファイル名で、C:\Sample\20240828test.csv
のように書き出す指示を書いてあります。
カスタマイズ
書き出し元のExcelファイルのパスを変更
1番のフローの「編集」を開いて、
以下の赤枠部分を変更します。
書き出すシート名の変更
2番のフローの、
赤枠部分を変更します。
書き出し後のファイル名の日付部分の形式を変更
7番のフローの赤枠部分を変更します。
240828
のように年を2桁にする場合はyyMMdd
、2024-08-28
のように区切り記号を入れる場合はyyyy-MM-dd
と入力します。
書き出し後のCSVファイルのパスを変更
8番のフローの赤枠部分を変更します。
%FormattedDateTime%
と書かれている部分へ7番のフローで設定した日付の形式が入るので、それと組み合わせるように任意の文字、拡張子などを設定します。この例ではC:\Sample\20240828test.csv
といったパスになります。
動作確認
再生ボタンで実行できるので、想定どおりに動くか確認してください。
以上です! こういうツールで自動化するのもおもしろいですね。
コメントは承認制ですので、反映までしばらくお待ち下さい。(稀にスパムの誤判定にて届かないこともあるようですので、必要な際はお問い合わせからお願い致します。)
YouTubeでQ&Aコンテンツを企画しています
運営しているYouTubeチャンネルで、ご相談やご質問を募集しています。動画のコメントやお問い合わせページからお気軽にご相談をお寄せください。