使用VBA在Excel中dynamic添加列表(表格)到特定的单元格(列)

我想在Excel中的L列填充下拉列表中的值(现在表?)在Excel中,这里是我的代码。 我已经手动创build了一个名为Table1的表格,其中包含一些虚拟值。 我可以硬编码表内的值,所以这不是一个问题。 我只需要运行一些条件和一些特定的行,我需要在Excel中的L列添加一个下拉列表。 任何帮助,将不胜感激。 另外,是否有一种简单的方法在Excel中对特定的行进行颜色设置?

Sub button_click() Set i = Sheets("Sheet1") Set e = Sheets("Sheet2") arrColumnNames = i.ListObjects("Table1") Dim d Dim j d = 1 j = 13 Do Until IsEmpty(i.Range("K" & j)) If i.Range("K" & j) = "Y" Then d = d + 1 e.Rows(d).Columns("A:E").Value = i.Rows(j).Columns("A:E").Value i.Rows(j).Columns("L") = arrColumnNames End If j = j + 1 Loop End Sub 

我想我知道你在做什么。 这将创build一个validation列表,并用您select的值填充列表。

 Dim myRng As String myRngr = Range("A1:A10").Address With Range("B2").Validation .Delete .Add Type:=xlValidateList, _ AlertStyle:=xlValidAlertStop, _ Operator:=xlBetween, Formula1:="=" & myRngr & "" End With 

要修改你需要什么源数据的范围,你只需要改变这一行,

 myRngr = Range("A1:A10").Address 

然后,您可以使用一个循环来运行L column ,如果符合条件,请添加validation列表。

希望有所帮助。