0
我有一個excel文件,其中某列的每一行都有由「|」分隔的數據(日期和整數)。有了VBA,我想突出顯示一個單元格,如果它包含的值大於3,000,000。拆分分隔單元格並突出顯示單元格是否包含特定值
以下是我的代碼。 sh2lrow是我目前工作表的最後一行(表2)。 ioSched是我正在使用的專欄。你能幫助我一個更好的解決方案嗎?我分割單元格,然後如果它是一個整數,將字符串轉換爲整數,然後突出顯示紅色,如果大於3,000,000。
For i = 2 To sh2lRow
splitBudget = Split((sh2.Cells(i, ioSched)), "|")
For Each Item In splitBudget
If IsNumeric(Item) Then
finalNumber = CInt(Item)
Else: finalNumber = 0
End If
If finalNumber > 3000000 Then sh2.Cells(i, ioSched).Interior.ColorIndex = 3
Next
Next i
哪個來第一:'日期|號碼或號碼| date'?並且有數千個分隔符? – Parfait
你在程序中碰巧有'On Error Resume Next'嗎?如果值高於32,767,則CInt(Item)將溢出。你需要使用finalNumber作爲'Long' - 而不是'CLng(Item)'。 – Comintern
是日期|日期|號碼,有時重複(即日期|日期|號碼)。沒有一千個分離器。我在「excel文件的圖像」中插入了一個例子。我還陷入困境,因爲我想強調單元格中的任何數字是否都大於3000000. –