【发布时间】:2018-04-14 07:07:20
【问题描述】:
关于我正在尝试做的事情的一些背景知识: 我的用户表单将用于对员工培训进行评分,并将结果添加到 Excel 电子表格中。我表格中的复选框代表了他们可能犯的不同类型的错误,理想情况下,每个错误都有一个数量框,如果选中该框,则可以指定每个错误发生的次数。我需要在一个单元格中,因为每一行是每个员工的 1 个测试。这是我的用户表单的示例: Mistakes Screen Shot
所有复选框和文本框共享相同的数字,我已经将它们编程为如果选中该框,则自动插入 1 个数量/如果未选中则为空。 (当然数量必须是可编辑的,以防重复错误类型。)
到目前为止,我能够使用带有字符串的循环来获取复选框,以使用以下代码将其标题放入单个单元格:
Dim CheckBox As Control
Dim Mistakes As String, delimiter As String
For Each CheckBox In Me.Frame_Mistakes.Controls
If TypeOf CheckBox Is MSForms.CheckBox Then
If (CheckBox.Value) Then
Mistakes = Mistakes & delimiter & CheckBox.Caption
delimiter = " | "
End If
End If
Next
With Sheet1
.Cells(emptyRow, 4).Value = Mistakes
End With
但是,到目前为止,我一直无法弄清楚如何在分隔符之前的每个错误末尾添加数量。如果我可以让字符串采用这种格式,我会更喜欢它:Mistakes Format in Excel
如果我的意图不清楚,我深表歉意。我非常新,老实说我很惊讶我能做到这一点。请,谢谢!
【问题讨论】:
标签: excel vba loops checkbox textbox