我之前使用CheckBox true / false完成了一些工作(编码不好,但是嘿,它运行),如下所示:
If CheckBox1.Value = False Then
wb.sheets("PQC 1001").Delete
Else: CheckBox1.Value = True
End If
此代码有效;我将25个CheckBox中的每一个分配给25张中的每一张。我试图做的改进是从CheckBoxes转移到ComboBoxes。
使用ComboBoxes,我应该能够允许人们在0,1,2或3之间进行选择,以指示他们想要的每张纸的数量。我初始化userform来执行此操作:
ComboBox1.List = Array("0", "1", "2", "3")
我遇到的问题是将每个值分配给流程。到目前为止,我有:
If ComboBox1.Value = "0" Then
wb.sheets("PQC 1001").Delete
Else: ComboBox1.Value = "1"
我无法做出"否则"多个条目,不知道我还能做些什么来使这项工作。我的想法/计划是列出(这会给出关于"结束的错误"):
Dim wb As Workbook
If ComboBox1.Value = "0" Then
wb.sheets("PQC 1001").Delete
If ComboBox1.Value = "2" Then
wb.sheets("PQC 1001").Copy ThisWorkbook.sheets(sheets.Count)
If ComboBox1.Value = "3" Then
wb.sheets("PQC 1001").Copy ThisWorkbook.sheets(sheets.Count)
wb.sheets("PQC 1001").Copy ThisWorkbook.sheets(sheets.Count)
Else: ComboBox1.Value = "1"
End If
对于我如何能够完成这项工作的任何想法都将不胜感激!
答案 0 :(得分:2)
显然我并不了解ElseIf。
我的工作代码如下:
If ComboBox1.Value = "0" Then
sheets("PQC 1001").Delete
ElseIf ComboBox1.Value = "2" Then
sheets("PQC 1001").Copy After:=sheets(2)
ElseIf ComboBox1.Value = "3" Then
sheets("QC 1001").Copy After:=sheets(2)
sheets("QC 1001").Copy After:=sheets(2)
Else: ComboBox1.Value = "1"
End If
很抱歉发布了我应该能够找到的内容。希望如果他们有类似的问题,这会有所帮助!