我试图根据男性/女性类型为优秀细胞着色。我正在比较单元格值,以便在Excel抛出此异常时知道我必须应用哪种样式:
"价值观"成员无法在" Range"型
就在这一行:If wSheet.Cells(rowIndex, MFindex).Values = "MALE" Then
这是我尝试过的:
For Each dr In dt.Rows
rowIndex += 1
If wSheet.Cells(rowIndex, mfIndex).Values = "MALE" Then
wSheet.Range(range).Style = "Male"
ElseIf wSheet.Cells(rowIndex, mfIndex).Values = "FEMALE" Then
wSheet.Range(range).Style = "Female"
End If
Next
前几行我做了这个并且工作正常:
If wSheet.Cells(rowIndex, 1).Value = wSheet.Cells(rowIndex + 1, 1).Value Then
Var range
包含该行的范围(它是一个简化,不要问它。它与异常无关。)
我还告诉你mfIndex
是男性/女性细胞的列索引
我从dt as DataTable
创建了Excel工作表,因此它们的行数和列数相同。
我检查了rowIndex
和mfIndex
,其值为rowIndex = 1
,mfIndex = 26
我正在使用Visual Studio 2008并处理.xlsx
文件
为什么Excel会抛出异常?我做错了什么?
答案 0 :(得分:1)
您需要使用:
If wSheet.Cells(rowIndex, MFindex).Value = "MALE" Then
请注意,它是Value
而不是Values
。 :)