我正在尝试创建一个订单表单,复制客户在C8中的地址详细信息:C13,我在单元格G15中创建了一个下拉列表,询问客户的帐单地址是否相同 - 是或否,如果答案是肯定的我希望将来自c8:c13的数据复制到C16:C21
中或者我可以隐藏行C16:C21?
我最初尝试纠正IF公式,但它只返回true或false。
答案 0 :(得分:1)
我认为这可能会解决你的问题。
现在让我们插入模块代码来填充组合框:
Private Sub Workbook_Open()
With Sheet1.ComboBox1
' Clear values
.Clear
' Populate list
.AddItem "Yes"
.AddItem "No"
End With
End Sub
在您的模块上输入以下代码:
Sub copyThis()
'Defining the variables
Set adressBill = Range("C8:C13")
Set destBill = Range("C16:C21")
'If the combobox is Yes then copy
If Sheet1.ComboBox1.Value = "Yes" Then
adressBill.Select
Selection.Copy
destBill.Select
ActiveWorkbook.Worksheets("Sheet1").Paste
End If
End Sub
如果您想在组合框值更改时更新值,只需点击开发者标签上的 设计模式 ,然后选择你的组合框并点击查看代码并将此代码放入其中:
Private Sub ComboBox1_Change()
'Calling the function whenever a value changes
Call copyThis
End Sub
此方法比公式(并且可能更安全)更容易,因为您无法在公式中直接引用组合框对象(直接)。相反,您可以在ComboBox中使用 LinkedCell属性 。