EXCELのシートを別のEXCELにコピーする方法

シートをコピーアクティビティで(HRESULTからの例外0x800706BA)というエラーが出てしまい、エラー後確認すると想定の動作は出来ているのですが、RPA自体はエラーで止まってしまいます。
かんたんExcelアクティビティパックは理由がありダウンロードが出来ないので、他の方法としてはコードで対応するしかないでしょうか?

こんにちは

シートをコピーがうまく動作しないとのことですので、ワークアラウンドとして
以下ClosedXMLを使った例です。

wbSrc = New ClosedXML.Excel.XLWorkbook("src.xlsx")
wbDist = New ClosedXML.Excel.XLWorkbook("dist.xlsx")
ws = wbSrc.Worksheet("Sheet1")
ws.CopyTo(wbDist,"NewSheetName")
wbDist.Save()
wbDist.Dispose()
wbSrc.Dispose()

サンプル
Sample20230508-4L.zip (13.6 KB)

早速のご回答いただきありがとうございます。
1行目のsrc.xlsxの方ですが、こちらがCSVデータですとどのように変更すればよろしいでしょうか?

こんにちは

元データがCSVであるなら、シートをコピーするという概念は不要で
CSVファイル読み込みでDataTableとして読み込んで、範囲書き込みで
対象に書き込めば良いように思えますが、いかがでしょうか?

1 Like

返信いただきありがとうございます。

シートをコピーアクティビティに固執していましたが、
CSVファイル読み込みでDataTableにして、範囲書き込みで
エラー無く出来ました。
ありがとうございました!

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.