1

Excelの範囲を取得し、Vb.Netを使用してオブジェクトの配列にコピーしようとしています。

これは問題ではありません。私は次のコードを使用します:

Dim vValues(,) As Object = ExcelApp.Range(vRange).Value

そして正常に動作します。しかし、私は次の場合があります:

Excel

列「C」; 値には特定の形式があり、内部的には別の値があります。

私の質問は:

誰かがユーザーが見るように正確な情報を取得する方法を知っていますか?

For ... Eachなんらかのサイクルを使わずに情報を取得しようとしています。

また、「texttocolumns」関数の使用を避けようとしています。

どちらも正しい解決策のようですが、大量のデータがあるとパフォーマンスに影響します。

参考:また、ODBC接続を介して情報を取得できます。しかし、私は範囲を使用してソリューションを検索しています

4

1 に答える 1

3

ユーザーに表示されるのはまさにTextプロパティです。ただし、その配列を持つことはできません。各セルを個別にクエリする必要があります。

Excelで「時間」フォーマットが適用されているためDouble、値ではなく値を配列に取得しています。DateTime「日付」カテゴリの形式がある場合、Excelは代わりに、それを表すでVariant/Dateはなく、適切なを送信します。Double

もう1つのオプションは、オブジェクトがどの列にあるべきかがわかっている場合、.NET側でオブジェクトを作成することです。DateTime

于 2013-03-20T17:52:36.717 に答える