通过代码进行条件格式化

时间:2015-02-21 11:55:05

标签: vba excel-vba access-vba excel

您好我正在使用此请求从其他网站解析一些数据:

   Public Function giveMeValue(ByVal link As Variant) As Variant

Set htm = CreateObject("htmlFile")

With CreateObject("msxml2.xmlhttp")
   .Open "GET", link, False
   .send
   htm.body.innerhtml = .responsetext
End With

If Not htm.getelementbyId("JS_topStoreCount") Is Nothing Then

   giveMeValue = htm.getelementbyId("JS_topStoreCount").innerText

Else
    giveMeValue = "0"

End If

htm.Close
Set htm = Nothing

End Function

使用单元格=giveMeValue(A1)上的函数现在我需要将一些格式条件应用于复制值,但我无法使用Excel条件格式

活动单元格“B”列

  1. 少于10红
  2. 10至15黄色
  3. 超过15绿色
  4. 所有未返回任何数字的单元格应为空白,请将=giveMeValue(A1)返回视为字符串

1 个答案:

答案 0 :(得分:1)

整数(和整数)本质上不能包含数字的小数(又名十进制)部分。我强烈怀疑这是一个重要的因素,但是你的问题中缺少任何可以解决这个问题的细节。

删除函数声明中的As String。这有效地将其更改为默认值As Variant。唯一的其他操作是将一个代码行更改为,

giveMeValue = CDbl(.innerText)

这应该返回一个数值,无论是否涉及小数。如果从刮擦中检索到无法转换为数字的文本,该函数将返回错误。