|
いつもお世話になっております。
【状況】
業務でCSVをExcelに取り込んで集計する処理を行っているのですが、
エラーになってしまいました。
調べたところ、先頭がハイフン(自由な文章が書かれているセル)なので
数式として認識されValueを取る際エラーになっているようです。
hasFormulaで数式かを判定し、数式の場合は
「rng.value = "'" & rng.Formula」☆
で文字にしてしまおうと思ったのですが、
rng.Formula自体がエラーになります。
先頭がハイフンだが☆でエラーにならないデータもあります。
【再現データ】
再現条件は解かっていませんが、下記データで再現することは解かっています。
CSVファイルとして保存し、別のExcelファイルから開いて
Range("A1").Formula を参照して下さい。
(尚、改行コードはLF(=0x0A)です。CRLF(0x0D 0x0A)にすると再現しません。)
"−あいうえお−
あいうえお
あいうえお
あいうえお
あいうえお
あいうえお"
【質問】
1.Formulaでエラーになるセルの内容を取得する方法があれば御教示下さい。
先頭に別の文字を付け、値取得後削る等(←例です。出来るか解かりません)
強引な方法でかまいません。
2.CSVファイルを開かず(開くと遅い。表示上何行に折り返すかの計算を
している様子)に、指定したセル座標のデータをCSVから取り出すことは
出来ますでしょうか?
3.他に何か回避策があれば御教示下さい。
4.再現条件が解かれば御教示下さい。
・部分回答でかまいません。
・出来ればアクセスは使いたくありません。
(本ツールを提供する先がアクセスをつかえなさそう)
|
|