For Each Rowで取得した数値が変化する

ExcelファイルのデータをForEachRowで取得します。その際、実際にExcelファイルで表示されている数値とUipathで取得した数値が異なっており、Excelの表示通りの数値を取得したいです。

※取得しているのは125行目のF列とG列(数値:0)。Uipathのログでは2となります。

image

【取得方法】
下図のように、取得したデータテーブル(Excelファイル)を元に、行は事前に取得した行数vIndex(変数)として、列をそれぞれF列とG列になるように設定しています。
image

【留意点】
・ExcelファイルのC列とD列の値を参考にF列とG列は数値を表示しています(関数を組んでいます。)
・C列とD列にも曜日を参照して結果を返すよう関数を組んでいます。
・参考程度ですが、悩んでいる中でC列とD列の数式をDeleteして手で0と入力するとF列とG列の値も0と表示されることがありました。

【試したこと】
・dtCalendar.Rows(vIndex).Item(5).ToString で取得した数値を変数に格納、その変数の型をGenericValueにしてみたのですが、うまく取得できませんでした。

何卒ご回答の程宜しくお願いします。

@wataru.K

Did you happen to change the reqd formatting value to display value in the use excel file scope and check if the data is coming properly

Cheers

こんにちは

DataTableの取得はどのようにしていますでしょうか?
もしWorkbookの方のReadRangeを使っているなら、ExcelReadRangeまたはReadRangeXを
あるいはReadRangeを使っているならWorkbookの方のReadRangeを試してみても
良いかもしれません。

あるいは、PreserveFormatをONにすると表示フォーマット通りとなるので、そちらでの
挙動も確認してみてはと思います。

@Yoichi

PreserveFormatのONでうまくいきました!
ご回答ありがとうございます!

1 Like