2012-01-18 39 views
0

的背景下使用的FlexGrid默認網格單元

我要檢查柔性網格單元默認顏色...

如果背景色爲青色,則下面的代碼工作,如果背景色爲白色,則下面的代碼不起作用。

代碼(方法1)

Private Sub flex1_LeaveCell() 
    With flex1 
     If .CellBackColor = vbCyan Then 
      .TextMatrix(.row, 34) = Val(.TextMatrix(.row, .Col)) 
     ElseIf .CellBackColor = vbWhite Then 
      .TextMatrix(.row, 33) = Val(.TextMatrix(.row, .Col)) 
     End If 
    End With 
End Sub 

代碼(方法2)

Private Sub flex1_LeaveCell() 
    With flex1 
     If .CellBackColor = vbCyan Then 
      .TextMatrix(.row, 34) = Val(.TextMatrix(.row, .Col)) 
     Else 
      .TextMatrix(.row, 33) = Val(.TextMatrix(.row, .Col)) 
     End If 
    End With 
End Sub 

上面的代碼是用於顏色青色唯一的工作,上面的代碼不酶識別白色。

那麼柔性網格的默認緩衝區單元顏色是什麼。

需要幫助

+0

第二個子方法(Method2)根本不起作用,其中存在語法錯誤。你的意思是寫'Else'嗎? – Abbas 2012-01-18 05:34:12

+0

@Abbas,對不起,輸入錯誤。現在我改變了... – Gopal 2012-01-18 05:35:44

+0

代碼非常直接,我沒有看到任何問題。用MsgBox flex1.CellBackColor打印顏色只是爲了確保。 – Abbas 2012-01-18 05:49:47

回答

1

這對我來說很好。這不適合你?

Private Sub flex1_LeaveCell() 
    With flex1 
     If .CellBackColor = vbCyan Then 
      MsgBox "cyan" 
     ElseIf .CellBackColor = vbWhite Or .CellBackColor = 0 Then 
      MsgBox "white" 
     End If 
    End With 
End Sub