Power Automateでdocxとxlsxとpptx内の画像を抜き出すやり方!
みなさんPower Automateってソフトウェア知っていますか?
下記参照w
https://powerautomate.microsoft.com/ja-jp/
業務プロセスを効率化(俗に言うRPA(Robotic Process Automation))ですが、このソフトを使用することで、簡単に効率化が出来ちゃうんですよ。久々にソフトを使ってみて楽しかったので、ついブログに書いちゃいました。
今回はそのPower Automateで作ったフローを公開しちゃいますので、ワード、エクセル、パワーポイントの画像の抜き出しに時間がかかってるみなさん。これを機に是非活用してくださいね。
それではコードをここに貼り付けておきます。
ここから↓
Display.SelectFileDialog.SelectFile Title: $”’docxかxlsxを選択”’ InitialDirectory: $”’C:\\”’ IsTopMost: True CheckIfFileExists: True SelectedFile=> SelectedFile ButtonPressed=> ButtonPressed
LABEL 開始
IF ButtonPressed <> $”’Cancel”’ THEN
File.GetPathPart File: SelectedFile RootPath=> RootPath Directory=> Directory FileName=> FileName FileNameWithoutExtension=> FileNameNoExtension Extension=> FileExtension
Folder.Create FolderPath: Directory FolderName: $”’作業中”’ Folder=> NewFolder
ON ERROR
END
File.Copy Files: SelectedFile Destination: NewFolder IfFileExists: File.IfExists.DoNothing CopiedFiles=> CopiedFiles
File.RenameFiles.RenameChangeExtension Files: CopiedFiles NewExtension: $”’zip”’ IfFileExists: File.IfExists.Overwrite RenamedFiles=> RenamedFiles
Compression.UnzipFiles ArchivePath: SelectedFile DestinationFolder: NewFolder
ON ERROR
END
WAIT 1
File.Delete Files: RenamedFiles
ON ERROR
END
Folder.Delete Folder: $”’%NewFolder%\\_rels”’
ON ERROR
END
Folder.Delete Folder: $”’%NewFolder%\\docProps”’
ON ERROR
END
File.Delete Files: $”’%NewFolder%\\[Content_Types].xml”’
ON ERROR
END
Folder.Delete Folder: $”’%NewFolder%\\docMetadata”’
ON ERROR
END
Folder.Delete Folder: $”’%NewFolder%\\customXml”’
ON ERROR
END
WAIT 1
Folder.Move Folder: $”’%NewFolder%\\word\\media”’ Destination: Directory MovedFolder=> MovedFolder
ON ERROR
END
Folder.Move Folder: $”’%NewFolder%\\xl\\media”’ Destination: Directory MovedFolder=> MovedFolder
ON ERROR
END
Folder.Move Folder: $”’%NewFolder%/ppt/media”’ Destination: Directory MovedFolder=> MovedFolder
ON ERROR
END
Folder.Delete Folder: $”’%NewFolder%\\word”’
ON ERROR
END
Folder.Delete Folder: $”’%NewFolder%\\xl”’
ON ERROR
END
Folder.Delete Folder: $”’%NewFolder%/ppt”’
ON ERROR
END
Folder.Delete Folder: NewFolder
ON ERROR
END
Folder.Rename Folder: MovedFolder NewName: $”’%FileNameNoExtension%media”’
ON ERROR
END
Folder.Delete Folder: $”’%Directory%\\media”’
ON ERROR
END
Display.ShowMessageDialog.ShowMessageWithTimeout Title: $”’書出が完了しました。”’ Message: $”’続いて処理を実行するには【はい】を,終了の場合は【いいえ】を選択して下さい。”’ Icon: Display.Icon.Information Buttons: Display.Buttons.YesNo DefaultButton: Display.DefaultButton.Button2 IsTopMost: True Timeout: 15 ButtonPressed=> ButtonPressed
END
IF ButtonPressed = $”’Yes”’ THEN
Display.SelectFileDialog.SelectFile Title: $”’再実行。docxかxlsxを選択”’ InitialDirectory: Directory IsTopMost: True CheckIfFileExists: True SelectedFile=> SelectedFile ButtonPressed=> ButtonPressed
GOTO 開始
END
ここまで↑
WAITがコード内にあると思うんですが、いちおー処理に時間かかるとフロー的に後からエラーを吐く可能性があると思っているのでいれてあるだけですw
さて、やり方なんですが実際やればわかるとは思うので、使用の仕方を簡単に説明だけしておきます。
使用する前に
Windows10の方は無料のPower Automateをインストール。
起動後はアカウントが必須なのでサインインをする。
Windows11の方はプリインストールしてあるので、検索窓でPower Automateを検索し、開く。
起動後はアカウントが必須なのでサインインをする。
下準備
1 起動したら新規ワークフローをクリック。
2 名前を決める。
3 上記のコードをコピペし保存して閉じる。
4 ワークフローの三点リーダーをクリック
5 プロパティにあるショートカットにCtrl+SHEFT+SPACEを割り当て
使用の仕方
フローの起動はCtrl+SHEFT+SPACE
選択窓が開くので画像を取り出したいdocxかxlsxかpptxを選択
同階層に抜き出し中の時は【作業中】フォルダがある。
作業が完了したらファイル名が【ファイル名+media】とかかれたフォルダに変更されている
そのフォルダ内に画像があります。
バージョン履歴
2023/06/29
公開
2023/06/29
フローを起動したらそのまま起動しつづけるように変更
Ctrl+SHEFT+SPACE
拡張子の選択項目を追加
ワード、エクセル以外の処理を実行した場合も落ちないように変更
2023/06/30
重度な不具合を修正
同一フォルダ内にある場合は生成したフォルダを削除するように変更
ループ機能の高速化を廃止(固まってしまう為)
2023/07/06
繰り返し選択処理ができるように変更。
2023/07/07
細かい修正とpptxにも対応
更新07/07 09時00分
更新日以前をコピペしてる方はコピーしなおしてください。
-
前の記事
外付けHDDやCドライブのファイルまたはディレクトリが壊れているが削除できないの問題を解決する方法 2022.02.24
-
次の記事
記事がありません
コメントを書く