excel vba 模块中赋值的变量 窗体中无法引用

大家好,我在excel vba 窗体中定义了public变量i和a,在模块中进行了赋值(通过msgbox显示此处的赋值没有问题),但是在窗体中无法读取i的数值,i的数值总是0。问题出在哪里? 如何让i正常赋值?'-----------------sheet中程序如下:Sub kaidan()MsgBox "主程序开始"Worksheets.Add after:=Worksheets(Worksheets.Count) '在最后面添加一个工作表ActiveSheet.Name = "不一致信息" '将新建的工作表更名为"abc" 完成1.Show 0MsgBox "主程序结束"End Sub'-----------Public Sub Worksheet_SelectionChange(ByVal Target As Range)MsgBox "开始执行拾取区域了"完成1.TextBox1 = Target.Address(False, False, xlR1C1)'列标是;'Target.Column'行标是:'Target.Rowi = Target.RowMsgBox "拾趣区域中i被赋值为:" & ilie = Target.ColumnEnd Sub'-----------'----------窗体中程序如下:Public i As Integer '定义单元格移动数字Public a As Integer'----------Private Sub TextBox1_Change()End Sub'---------Private Sub UserForm_Click() End Sub'----------Private Sub 标签1_Click()End Sub'----------Public Sub 确定1_Click()MsgBox "文字框里输入的内容是:" & TextBox1.ValueMsgBox "窗口卸载前 if语句中i是" & iUnload 完成1MsgBox "结束点击确定键语句"MsgBox "开始执行具体开单内容"MsgBox "窗口卸载后 if语句中i是" & i 'If i < 110 Then For a = i To 110 MsgBox "if语句中i是" & i If Worksheets("sheet2").Cells(i, 8) <> "" Then '判断单元格是否为空值 If Cells(i, 8).Interior.ColorIndex = 6 Or Cells(i, 8).Interior.ColorIndex = 44 Then Worksheets("不一致信息").Cells(i, 8) = "泡泡号" & Cells(i, 1) & ":要求 " & Cells(i, 6) & "至" & Cells(i, 4) & ",实际 " & Cells(i, 8) & "。" End If Else MsgBox "第" & i & "行,第8列单元格" & "为空值,请注意检查并填充空值。并建议删除SHEET后重新运行程序" '报错“有空值,请注意检验并补充空值”并退出程序和清除所有内容 Worksheets("不一致信息").Delete Exit For End If Next a 'End If MsgBox "结束执行具体开单内容"End Sub'---------

PublicpasAsLongSub ()Dimi,stst=MsgBox("你确定要显示答案?需要正确输入密码",1)Ifst=1ThenUserForm1.ShowEndIfIfst+pas=3315057ThenFori=5ToCells(Rows.Count,1).End(xlUp).RowSheets("Sheet2").Unprote追问

你好,能给我解释一下吗?看了您的答案不能解决我的疑惑

温馨提示:答案为网友推荐,仅供参考
相似回答