我有2个下拉框和一个按钮。投递箱1的数字从1到30,投递箱2的数字从1到130。
我需要一种方法来获取投递箱2的值,并且-将投递箱1的值作为行号,然后将其粘贴到另一张纸的C列中,以便进行实时数据编辑。
注意:我是VB的完全菜鸟。下拉框和按钮在图表上是否有任何不同。另外,我还必须在图表表而不是数据表上放置下拉框。
我尝试选择下拉框值,但是无法找出正确的方法。 DropBox2.Value
和DropBox2.Value.Select
之类的东西似乎不起作用(很可能做错了)。谷歌搜索了如何获得投币箱价值并粘贴到其他地方的各种方法,但无济于事。抱歉,如果这看起来很平凡,就浪费任何人的时间。
Sub TEST()
' TEST Macro
Sheets("Sheet1").Select
DropBox2.Value.Select
ActiveSheet.Cell("$C""DropBox1.Value").Select
Selection.Paste
Chart2.Select
End Sub
打算执行我在描述中所说的,但是错误消息
需要对象
出现。
答案 0 :(得分:0)
尝试以下代码:
Sub TEST()
Dim varDrowDown1 As Variant: varDrowDown1 = ThisWorkbook.Worksheets("Sheet1").Shapes("Drop Down 1").OLEFormat.Object.Value
Dim varDrowDown2 As Variant: varDrowDown2 = ThisWorkbook.Worksheets("Sheet1").Shapes("Drop Down 2").OLEFormat.Object.Value
ThisWorkbook.Worksheets("Sheet2").Cells(varDrowDown1, 1).Value = varDrowDown2
End Sub
检查对象名称是否正确。我假设Sheet1是下拉框所在的位置,下拉1和下拉2是它们的名称,Sheet2是要将值复制到的工作表,并且您想将其插入第一列。
通过右键单击下拉框并查看活动单元格引用(例如A1)通常出现的位置,可以找到下拉框的名称。表格名称很简单,您也应该知道该列的编号。
答案 1 :(得分:0)
Sheets("Chart2").Select
Dim varDropDown1 As Variant: varDropDown1 = ThisWorkbook.Sheets("Chart2").Shapes("DropDown1").OLEFormat.Object.Value
Dim varDropDown2 As Variant: varDropDown2 = ThisWorkbook.Sheets("Chart2").Shapes("DropDown2").OLEFormat.Object.Value
ThisWorkbook.Worksheets("Sheet1").Cells(varDropDown1, 3).Value = varDropDown2
很抱歉,感谢您的所有帮助!