以编程方式定位Excel的ListBox

我需要在工作表上dynamic创build和删除1到N个列表框。 因为页面会改变,我不能提前知道在哪里放置控件,所以像…左:= 10,顶:= 10,宽:= 106.8,高:= 154.6将无法正常工作。 我需要能够以编程方式将控件放置在C1或C55上。

我所做的研究只发现了一个固定位置的静态创build的例子,我也一直没能find任何能给我一个单元格坐标的东西(例如:C1 = Left:= 65,Top:87) 。

谢谢你的帮助。

考虑一下:

Dim i&, n&, r As Range n = 3 With ActiveSheet For i = 1 To n Set r = .Range("c1")(i) .ListBoxes.Add r.Left, r.Top, r.Width, r.Height Next End With 

这只是演示如何使用单元的尺寸和坐标作为控件的尺寸和坐标。 它会高一点。 你可以调整。

另外,您可以使用任何您希望识别单元格的机制。 我只是做了C栏的三个顶部单元格

Interesting Posts