[英]Excel-VBA User form text entry
我正在尝试为用户提供一个供用户输入文本的用户窗体,该文本将设置为工作表名称。 因为工作表名称不能超过30个字符,所以我想添加一个警告。 但是在宏中,这给了我一个错误。
我正在用这种情况检查它;
首先,我写的名字要长于30个字符。 它给了我我写的错误。 (这很棒)然后再次将我拖放到输入屏幕(这很棒)然后我输入了正确的名称(短于30个字符。)它给了我运行时错误'1004; 应用程序定义或对象定义的错误。
代码是这样的;
Yeni_Sheet_Adi_Olustur.Show
If Yeni_Sheet_Adi_Olustur.Yeni_Sheet = "" Then
MsgBox "Lütfen Sheet adi seçiniz"
GoTo son
ElseIf Len(Yeni_Sheet_Adi_Olustur.Yeni_Sheet) > 30 Then
MsgBox "Sheet adi 30 karakterden kisa olmalidir"
Yeni_Sheet_Adi_Olustur.Show
Else
Yeni_Sheet = CStr(Yeni_Sheet_Adi_Olustur.Yeni_Sheet.Value)
End If
Yeni_Sheet_Adi_Olustur.Yeni_Sheet使用F8控件给我“对象变量或未设置块变量”错误。 :(
我愿意接受任何建议。 非常感谢。
我弄清楚了,我错过了这个部分,输入了30个字符以上后会发生什么,所以我添加了一个“ GoTo”代码。 现在看起来像这样,效果很好。
Son1:
Yeni_Sheet_Adi_Olustur.Show
If Yeni_Sheet_Adi_Olustur.Yeni_Sheet = "" Then
MsgBox "Lütfen Sheet adi seçiniz"
GoTo son
ElseIf Len(Yeni_Sheet_Adi_Olustur.Yeni_Sheet) > 30 Then
MsgBox "Sheet adi 30 karakterden kisa olmalidir"
Yeni_Sheet_Adi_Olustur.Hide
GoTo Son1
Else
Yeni_Sheet = CStr(Yeni_Sheet_Adi_Olustur.Yeni_Sheet.Value)
End If
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.