根据文本框值切换图片可见性逻辑正确却报Error 1004
问题分析与修复方案
一、Error 1004 报错原因
- 引用对象错误:你用
Sheet1.Range("BookRead")获取文本框值,但如果"BookRead"不是有效的命名单元格/范围,或者你的文本框是表单控件/ActiveX控件而非绑定到命名单元格,就会触发1004错误:- 若为ActiveX文本框,需通过控件名称直接取值,比如
Sheet1.BookRead.Value(替换为你的文本框实际名称); - 若为表单控件文本框,要通过Shapes对象获取文本内容,比如
Sheet1.Shapes("文本框名称").TextFrame2.TextRange.Text; - 若文本框绑定到单元格,需确认"BookRead"这个命名范围确实指向了绑定的单元格。
- 若为ActiveX文本框,需通过控件名称直接取值,比如
二、功能逻辑颠倒问题
你的代码逻辑和预期完全相反:
- 预期:值≥5时,
RookieReaderR可见、RookieReaderNR不可见 - 现有代码:值≥5时,把
RookieReaderR设为False(不可见),RookieReaderNR设为True(可见),刚好搞反了判断后的赋值逻辑。
三、修复后的代码示例
情况1:文本框是ActiveX控件(假设控件名称为BookRead)
Dim txtVal As Double ' 处理空值或非数字输入的情况 If IsNumeric(Sheet1.BookRead.Value) Then txtVal = Val(Sheet1.BookRead.Value) Else txtVal = 0 ' 非数字时默认按0处理 End If If txtVal >= 5 Then Sheet1.Shapes("RookieReaderR").Visible = True Sheet1.Shapes("RookieReaderNR").Visible = False Else Sheet1.Shapes("RookieReaderR").Visible = False Sheet1.Shapes("RookieReaderNR").Visible = True End If
情况2:文本框是表单控件(假设表单控件Shapes名称为TextBox_BookRead)
Dim txtVal As Double Dim txtBox As Shape Set txtBox = Sheet1.Shapes("TextBox_BookRead") ' 获取表单文本框内容并处理异常 If IsNumeric(txtBox.TextFrame2.TextRange.Text) Then txtVal = Val(txtBox.TextFrame2.TextRange.Text) Else txtVal = 0 End If If txtVal >= 5 Then Sheet1.Shapes("RookieReaderR").Visible = True Sheet1.Shapes("RookieReaderNR").Visible = False Else Sheet1.Shapes("RookieReaderR").Visible = False Sheet1.Shapes("RookieReaderNR").Visible = True End If
情况3:文本框绑定到命名范围"BookRead"的单元格
Dim txtVal As Double Dim targetRange As Range ' 先验证命名范围是否存在 On Error Resume Next Set targetRange = Sheet1.Range("BookRead") On Error GoTo 0 If Not targetRange Is Nothing Then If IsNumeric(targetRange.Value) Then txtVal = Val(targetRange.Value) Else txtVal = 0 End If If txtVal >= 5 Then Sheet1.Shapes("RookieReaderR").Visible = True Sheet1.Shapes("RookieReaderNR").Visible = False Else Sheet1.Shapes("RookieReaderR").Visible = False Sheet1.Shapes("RookieReaderNR").Visible = True End If Else MsgBox "命名范围BookRead不存在" End If
内容的提问来源于stack exchange,提问作者Ghatius
相关产品推荐
相关产品推荐

