Vba 忽略范围中的空白单元格
这里是VBA的初学者。我试图将一系列单元格放入另一个工作簿中,当它这样做时,它会将空白粘贴为“12:00:00AM”。我试图让它完全复制过来,在目标工作簿中保留空白,就像在源工作簿中一样 当前代码Vba 忽略范围中的空白单元格,vba,excel,Vba,Excel,这里是VBA的初学者。我试图将一系列单元格放入另一个工作簿中,当它这样做时,它会将空白粘贴为“12:00:00AM”。我试图让它完全复制过来,在目标工作簿中保留空白,就像在源工作簿中一样 当前代码 Sub GetDinServRange() With Range("A37:E111") If Not IsEmpty("A37:E111") Then With Range("A37:E111") .Formula = "='C:\FILEPATH\
Sub GetDinServRange()
With Range("A37:E111")
If Not IsEmpty("A37:E111") Then
With Range("A37:E111")
.Formula = "='C:\FILEPATH\FILE'!A37:E111"
.Value = .Value
End With
End If
End With
End Sub
改变
到
或
注意:VBA中需要双引号(“”)或CHR(34),以使双引号出现在实际的Excel公式中。目标单元格具有日期格式。改变这个。否则,在0/为空的情况下,将公式更改为返回“”。您可以为值粘贴特殊值。这将删除源工作簿中存在的任何公式/etc。请尝试在公式中使用
If
,如果该公式为空,则将其放入“”
.Formula = "='C:\FILEPATH\FILE'!A37:E111"
.Formula = "=IF(ISBLANK('C:\FILEPATH\FILE'!A37:E111),"""",'C:\FILEPATH\FILE'!A37:E111)"
.Formula = "=IF(ISBLANK('C:\FILEPATH\FILE'!A37:E111)," & CHR(34) & CHR(34) & ",'C:\FILEPATH\FILE'!A37:E111)"