1

セルにユーザー定義関数を使用する数式が含まれている場合でも、VB6 は Excel ワークブックを開いてセルの値を読み取ることができます。ただし、VB.NET 2012 は常に値ではなくエラー コード (0x800A07ED) を返します。セルの実際の値を返すように VB.NET を誘導する方法を知っている人はいますか?


セルの数式に UDF が含まれていると、VB.NET が失敗します。たとえば、セルの数式は次のようになります=MyFunction(A1)(ここで、MyFunction はパブリック モジュール内のパブリック関数です)。

' A1's Value is "123".
' B1's Formula is "=MyFunction(A1)".
'
' After opening the workbook with VB.NET:
Dim rng1Cell As Excel.Range
rng1Cell = Sheet1.Range("B1")

Dim dblValue As Double
dblValue = CType(rng1Cell.Value, Double)

' dblValue now equals 0x800A07ED
4

0 に答える 0