มีคนถามว่า อยากให้เช็คเท็กซ์บ็อกซ์ ถ้าว่างให้เปลี่ยนสีให้หน่อย
Text box name = HomeMobile
What event should I use on the report: • Private Sub Report_Load() • Private Sub Report_Open(Cancel As Integer)
Private Sub Report_Open(Cancel As Integer)
If IsNull(Textbox.Value) = True Then
Textbox.BackColor = vbRed
End If
End Sub
อีกคำตอบ
You could try with the Format or Print event, and also arrange for the colour to be reset:
Textbox.BackColor = IIf(IsNull(Textbox.Value), vbRed, vbWhite)
อันนี้คำถามว่า อยากให้ฟอร์มโหลดขึ้นมาแล้วเปลี่ยนสีทุกกล่องข้อความ
You can place this code in the Onload event of your form and this will change all of your boxes at one time.
Delcare the control:
Dim tb as Control
Code:
For Each tb In Me.Controls
If TypeOf tb Is TextBox Then
tb.BackColor = 'your color goes here
End If
Next
-----------------------------------------------------------------------------
อันนี้โค้ดของคนถาม
For Each Ctl In Detail.Controls
'ตรวจสอบเฉพาะที่เป็นประเภท TextBox / Combo Box
If Ctl.ControlType = acTextBox Or Ctl.ControlType = acComboBox Then 'Or ctl.ControlType = acCheckBox
'และเฉพาะที่ชื่อชื้นต้นด้วย Status
If Ctl.Name Like "Status*" Then
'ถ้าได้ค่าว่างๆ
If Ctl &"" = "Less than 1 day" Then
isBlank = "LT"
Elsef Ctl &"" = "More than 1 day" Then
isBlank = "MT"
Elsef Ctl &"" = "Card expired" Then
isBlank = "C"
Exit For
End If
End If
Next
If isBlank = "LT" Then
Ctl.BackColor = vbYellow
Elself isBlank = "MT" Then
Ctl.BackColor = vbGreen
ElseIf isBlank = "C" Then
Ctl.BackColor = vbRed
Exit Sub
End If
End if