2014-09-03 143 views
0

我使用部分填充數據的雙數組工作,然後將其打印到n Excel表中的範圍。vba將數組值設置爲NaN

問題是,所有的值都是默認值0.我希望它們是NaN(不是數字),它在單元格中表示爲NV()。如果可能的話,雙數組應該自動轉換爲NV()。

+1

'= NV()'在Excel提高了'#NAME?錯誤值。 – 2014-09-03 14:47:33

+0

NV()是NA()的德語:http://office.microsoft.com/de-de/excel-help/nv-funktion-HA102752925.aspx – EvenPrime 2014-09-03 15:12:36

回答

1

相反的聲明您的數組爲雙只維持它的變體

然後你就可以初始化#NA陣列使用CVErr(xlErrNA)

Sub MyInitializer() 
Dim Arr(10) 

'Initialize all values to #NA 
For i = 0 To UBound(Arr) 
Arr(i) = CVErr(xlErrNA) 
Next 

'Do something with Arr values 
Arr(1) = 2.5 

Dim Destination As Range 
Set Destination = Range("K1") 
Set Destination = Destination.Resize(UBound(Arr), 1) 
Destination.Value = Application.Transpose(Arr) 

End Sub