更新列表框"Update"同时嵌入电子表格中的按钮



我有一个电子表格,它有一个列表框,其中有多个列显示来自不同工作表的值,当我双击列表框中的一行时,这些值显示在我所在的活动工作表的单元格G7:M7中。现在,我为更新按钮创建了一个代码,用于更新列表框和它所链接的工作表中的项目,但是它遇到了应用程序定义的错误。不确定我是否使用错误的工作表功能。"G5"是标识列表框中哪个项被显示的激活器在此输入图像描述此表链接到列表框。

Private Sub CommandButton2_Click()
Dim sh As Worksheet
Set sh = ThisWorkbook.Sheets("lookup")
Dim selected_row As Long
selected_row = Application.WorksheetFunction.Match(Range("G5"), sh.Range("A:A"), 0)
sh.Range("J" & selected_row).Value = Range("G7").Value
sh.Range("K" & selected_row).Value = Range("H7").Value
sh.Range("L" & selected_row).Value = Range("I7").Value
sh.Range("M" & selected_row).Value = Range("J7").Value
sh.Range("N" & selected_row).Value = Range("K7").Value
sh.Range("O" & selected_row).Value = Range("L7").Value
sh.Range("P" & selected_row).Value = Range("M7").Value
End Sub

当没有匹配时抛出的错误是1004。你可以像这样设置:

Private Sub CommandButton2_Click()
Dim sh As Worksheet
Set sh = ThisWorkbook.Sheets("lookup")
Dim selected_row As Long
on error resume next
selected_row = Application.WorksheetFunction.Match(ActiveSheet.Range("G5").value, 
sh.Range("A:A"), 0)
on error goto 0
if selected_row <> 0 then
sh.cells(10 , selected_row).resize(1,7).Value = ActiveSheet.Range("G7").resize(1,7).Value
else
call vba.msgbox("Unable to find " & Range("G5").value & " in the lookup table")
end if
End Sub

相关内容

  • 没有找到相关文章

最新更新