首页 > 解决方案 > Excel 运行时错误 1004

问题描述

我是 Visual Basic 的新手。我创建了一个工作正常的电子表格,直到我将条目从它复制到另一个工作表!

显然,每当我单击“查找条目”表单上的“继续”按钮时,我都会收到运行时错误 1004,下拉菜单中也没有显示任何内容,但我从未更改过代码。当我点击调试时,

TargetRow = Application.WorksheetFunction.Match(ColumnD_Menu, Sheets("Data").Range("Dyn_Full_Name"), 0) 

突出显示,我不知道如何继续,因为我根本没有接触过这行代码。

可能是什么问题,我该如何解决?

下面是我的代码

Option Explicit

Private Sub CommandButton1_Click()

    Dim TargetRow As Integer

    TargetRow = Application.WorksheetFunction.Match(ColumnD_Menu, Sheets("Data").Range("Dyn_Full_Name"), 0)
    Sheets("Engine").Range("B5").Value = TargetRow

    Unload Find_Entry_UF

    Data_UF.Txt_FirstName = Sheets("Data").Range("Data_Start").Offset(TargetRow, 1).Value
    Data_UF.Txt_Surname = Sheets("Data").Range("Data_Start").Offset(TargetRow, 2).Value


    Data_UF.Combo_Age = Sheets("Data").Range("Data_Start").Offset(TargetRow, 4).Value
    Data_UF.Combo_Marital = Sheets("Data").Range("Data_Start").Offset(TargetRow, 5).Value
    Data_UF.Combo_Gender = Sheets("Data").Range("Data_Start").Offset(TargetRow, 6).Value


    If Sheets("Data").Range("Data_Start").Offset(TargetRow, 7).Value = "Yes" Then
        Data_UF.Option_Y_Children = True
    Else
        Data_UF.Option_N_Children = True
    End If

    Data_UF.Combo_Religion = Sheets("Data").Range("Data_Start").Offset(TargetRow, 8).Value
    Data_UF.Txt_Address = Sheets("Data").Range("Data_Start").Offset(TargetRow, 9).Value
    Data_UF.Combo_FileNumber = Sheets("Data").Range("Data_Start").Offset(TargetRow, 10).Value

标签: excelvbaexcel-formulaexcel-2010

解决方案


1004 错误来自这样一个事实,即在 Excel 文件中,至少缺少以下 2 个条件中的 1 个:

  • 没有名为的工作表Data
  • Dyn_Full_Name工作表上没有命名范围Data

相应地调整工作表并修复错误。


推荐阅读