2016-08-04 55 views
0

如果.Formula = "='C:\data\[adxl364.xls]ADXL364_QC'!A1"的結果爲空,它會在我的Worksheet中返回值0VBA使用.Formula in Excel在Range.Value爲空時返回0

如果Cell爲空時,我應該在代碼中添加什麼,以便不返回值0

Sub GetRange() 
    With Range("A:Z") 
     .Formula = "='C:\data\[adxl364.xls]ADXL364_QC'!A1" 
     .Formula = .Value 
    End With 
End Sub 

回答

1

您可以使用函數:=IF(ISBLANK('C:\data\[adxl364.xls]ADXL364_QC'!A1);"";'C:\data\[adxl364.xls]ADXL364_QC'!A1)

1

您需要修改公式返回一個空字符串時,」 ..!A1" 不= 0

Sub GetRange() 
    With Range("A:Z") 
     .Formula = "=If('C:\data\[adxl364.xls]ADXL364_QC'!A1 > 0,'C:\data\[adxl364.xls]ADXL364_QC'!A1,Text(,))" 
     .Formula = .Value 
    End With 
End Sub 

我用文字()返回一個空字符串,而不是雙引號增加了一倍(如「」,「」):

"=If('C:\data\[adxl364.xls]ADXL364_QC'!A1 > 0,'C:\data\[adxl364.xls]ADXL364_QC'!A1,"""")" 
+0

謝謝@Thomas Inzina,這也是我一直在嘗試做的。但是,沒有工作。 –

+0

= IF('C:\ data \ [adxl364.xls] ADXL364_QC'!A1 = 0,「」,'C:\ data \ [adxl364.xls] ADXL364_QC'!A1) –

+0

感謝您的支票! – 2016-08-04 07:35:24