复选框将值动态插入特定单元格
Chechbox inserting value into specific cell dynamically
我发现这段代码用于从 Excel 用户表单中的复选框插入值:
Dim rw As Integer
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")
If Checkbox1.Value = True Then
ws.Cells(rw, 2).Value = "X"
Else
ws.Cells(rw, 2).Value = ""
End If
效果很好!但现在我需要在另一个用户窗体中使用它,我从 ComboBox 中查找一个值,其中与 ComboBox 中特定数字相关的信息将显示在用户窗体中。用户可以将新信息保存到这个特定号码,这里我不能只使用上面显示的代码吗?
Private Sub pSave()
Dim rw As Integer
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")
If blnSearch = True Then
'Unlocking the sheet
Sheets("Sheet1").Unprotect Password:="*********"
totRows = Worksheets("Sheet1").Range("A3").CurrentRegion.Rows.Count
For i = 2 To totRows
If Trim(Worksheets("Sheet1").Cells(i, 1)) = Trim(ComboBox_ID.Text) Then
Worksheets("Sheet1").Cells(i, 1).Value = TextBox_ID.Text
'Worksheets("Sheet1").Cells(i, 2).Value = CheckBox_Eldesign.Value
我发现插入复选框的方式与用户窗体中的其他框相同,但我不知道如何确定复选框将在单元格中写入的内容,就像我可以使用其他代码一样?
预先感谢您的宝贵时间和帮助!
多种解决方法:
你已有的方式(你注释掉的那一行)很好。然后,您可以在 excel 中使用简单的条件格式。如果单元格值为真,则应显示 X。如果为假,则应显示空单元格。
重复使用与您提供的上面代码片段相同的代码。而不是注释掉的行,只需插入 If
和 End If
之间的部分。另外,不要忘记多行 Then
语句要求您以 End If.
结尾
If Trim(...) = Trim(...) Then
Worksheets(...) = TextBox_ID.Text
With Worksheets(...).Cells(i,2)
If CheckBox_Eldesign.Value Then
.Value = “X”
Else
.Value = “”
End if
End With
End If
(我无法根据我的 phone 进行正确的格式化,对此深表歉意...)
我发现这段代码用于从 Excel 用户表单中的复选框插入值:
Dim rw As Integer
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")
If Checkbox1.Value = True Then
ws.Cells(rw, 2).Value = "X"
Else
ws.Cells(rw, 2).Value = ""
End If
效果很好!但现在我需要在另一个用户窗体中使用它,我从 ComboBox 中查找一个值,其中与 ComboBox 中特定数字相关的信息将显示在用户窗体中。用户可以将新信息保存到这个特定号码,这里我不能只使用上面显示的代码吗?
Private Sub pSave()
Dim rw As Integer
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")
If blnSearch = True Then
'Unlocking the sheet
Sheets("Sheet1").Unprotect Password:="*********"
totRows = Worksheets("Sheet1").Range("A3").CurrentRegion.Rows.Count
For i = 2 To totRows
If Trim(Worksheets("Sheet1").Cells(i, 1)) = Trim(ComboBox_ID.Text) Then
Worksheets("Sheet1").Cells(i, 1).Value = TextBox_ID.Text
'Worksheets("Sheet1").Cells(i, 2).Value = CheckBox_Eldesign.Value
我发现插入复选框的方式与用户窗体中的其他框相同,但我不知道如何确定复选框将在单元格中写入的内容,就像我可以使用其他代码一样?
预先感谢您的宝贵时间和帮助!
多种解决方法:
你已有的方式(你注释掉的那一行)很好。然后,您可以在 excel 中使用简单的条件格式。如果单元格值为真,则应显示 X。如果为假,则应显示空单元格。
重复使用与您提供的上面代码片段相同的代码。而不是注释掉的行,只需插入
结尾If
和End If
之间的部分。另外,不要忘记多行Then
语句要求您以 End If.If Trim(...) = Trim(...) Then Worksheets(...) = TextBox_ID.Text With Worksheets(...).Cells(i,2) If CheckBox_Eldesign.Value Then .Value = “X” Else .Value = “” End if End With End If
(我无法根据我的 phone 进行正确的格式化,对此深表歉意...)