通过代码进行条件格式化
Conditional Formatting through code
您好,我正在使用此请求从其他网站解析一些数据:
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"列
- 不到10红色
- 10 到 15 黄色
- 超过 15 个绿色
所有未 return 任何数字的单元格都应为空白,请将 =giveMeValue(A1)
return 视为字符串
整数(和 Long 整数)本质上不能包含数字的小数部分(又名 小数 )。我强烈怀疑这是一个重要因素,但您的问题中缺少任何可以澄清这一点的细节。
删除函数声明中的As String
。这有效地将其更改为默认值 As Variant
。唯一的其他操作是将一个代码行更改为,
giveMeValue = CDbl(.innerText)
这应该return一个数值,无论是否有小数。如果从抓取中检索到无法转换为数字的文本,该函数将 return 出错。
您好,我正在使用此请求从其他网站解析一些数据:
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"列
- 不到10红色
- 10 到 15 黄色
- 超过 15 个绿色
所有未 return 任何数字的单元格都应为空白,请将 =giveMeValue(A1)
return 视为字符串
整数(和 Long 整数)本质上不能包含数字的小数部分(又名 小数 )。我强烈怀疑这是一个重要因素,但您的问题中缺少任何可以澄清这一点的细节。
删除函数声明中的As String
。这有效地将其更改为默认值 As Variant
。唯一的其他操作是将一个代码行更改为,
giveMeValue = CDbl(.innerText)
这应该return一个数值,无论是否有小数。如果从抓取中检索到无法转换为数字的文本,该函数将 return 出错。