VB:EpPlus Excel読み込みエラー

情報

環境:Visual Studio2019
言語:vb
OS:widnows10
Ver:EpPlus4と5でも確認済み
DLなどについては前回のC#:EpPlus簡単な操作とダウンロードまでに記録してあります

エラーが起こる条件

以下画像のようにセルの名前を設定するが、全角文字の「’(シングルクォーテーション)」があること

Using pkg As New ExcelPackage() = ExcelFile
	'pkg.Workbook.Worksheetsを取得時にエラーになる
	For Each Sheet As ExcelWorksheet In pkg.Workbook.Worksheets
 
	Next
End Using

解決・問題発生として

ソースコード上に何できることはなく、Worksheetsを読み込みんだ段階でVisual studioでエラーを引き起こす
EpPlusがExcelファイルを読み込もうとするときにxml形式に変換するのかで全角シングルクォーテーションがあると不具合を起こすものだと考えれる

意図しなくてもExcelを印刷プレビューなどで表示させたりすると「Print_Area」が作成される場合がある、この場合であればSheet名に全角シングルクォーテーションがあった場合に同様形式でエラーが発生する

おまけ

Formulaある場合(Sum(A1:A100)など)に計算してから値を使用したい場合

'式を計算実行する、これをしていないとValueに計算後の値が入っていない

ESheet.Cells(1, 1).Calculate()
Dim GetVal as string = ESheet.Cells(1, 1).Value

貼り付け先のExcelにFormulaある場合に値を入れた場合

'式を削除していないと値を入れても式が優先されるため、値が入っていないように見える
'そのため式を以下のように削除しておく
ESheet.Cells(1, 1).Formula = String.Empty

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です