Excelのフッタを取得する方法はありますでしょうか。
(試したこと)
①「Excel application scope」でWorkbookを取得。
②WorkbookからCurrentsheetを取得。
→Currentsheetからフッタを取得できると思ったのですが、「Microsoft.Office.Interop.Excel.Worksheet」の型にはPageSetupプロパティが存在せずフッタが取得できませんでした。
UiPath Studio 2018.2.3で実装できるとありがたいです。
yukino
(kawahara)
2
アイディアレベルですみませんが、
・[Invoke vba] アクティビティを使ってVBAをコール、VBAでフッタテキストを返す小さいVBAマクロを作るってのはどうでしょうか?
・Excelアプリケーションを操作してページセットアップダイアログを表示して取得ってのはどうでしょうか?
どちらも2018.2.3で実装可能だと思います。
2 Likes
ご回答ありがとうございました。
仰る通りVBAを作ってしまった方が早そうですね。
検討してみます。ありがとうございました!
Yoichi
(Yoichi)
4
こんにちは
EXCEL Activity Packageに付帯するNPOIあたりを使うのもありかと思います。
NPOIを使う例
workbook = NPOI.SS.UserModel.WorkbookFactory.Create(“test.xlsx”)
sheet = workbook.GetSheet(“Sheet1”)
strFooter = sheet.Footer.center
フォント情報なども出力されるようです。
3 Likes
ご回答ありがとうございました。
2019.4.2ではNPOIが使えることを確認しましたが、2018.2.3ではNPOIが参照できないようでした。
(ImportsでNPOIと入力しても出てきませんでした…。.NETのバージョンにも影響するでしょうか。2018.2.3の.NETのバージョンは4.0.30319.42000です)
今後使う機会もあると思うので、NPOIのことは覚えておこうと思います。
大変勉強になりました。情報ありがとうございました。
1 Like
Yoichi
(Yoichi)
6
こんにちは
あいにく2018.2の環境が手元にないので確認ができないのですがClosedXMLを使う手もあります。
workbook = new ClosedXml.Excel.XLWorkbook("test.xlsx")
worksheet = workbook.Worksheet("Sheet1")
strFooter = worksheet.PageSetup.Footer.Center.GetText(ClosedXml.Excel.XLHFOccurrence.OddPages)
NPOI同様参照できない可能性大ですが...
2 Likes
度々のご回答恐れ入ります。
ClosedXMLも参照できませんでした…。
Studioのバージョンアップも検討してみようと思います。
参考になる情報を教えてくださり、本当にありがとうございました。
とても勉強になります!
色々検証した結果、2019.4バージョンで上記実装をして、2018.2.3で動作しました。
大変お世話おかけしました。
Yoichiさんの最初のご回答で実装しようと思います。
3 Likes
system
(system)
Closed
9
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.