从给定的单元格excel-vba查找表格

我有一个表位于电子表格的某个地方,例如b3:f15,并且在它附近没有任何东西(空单元格),我试图select这个表格并为它着色。 不知何故,我的代码不起作用,我无法find我的逻辑错误

Sub colorize_table() Dim temp As Range Set temp = Application.InputBox(prompt:="Please choose cell", Type:=8) Dim i As Integer, k As Integer Dim r As Integer, p As Integer i = temp.Row k = temp.Column r = temp.Row p = temp.Column While temp(i, k) <> "" While temp(i, k) <> "" i = i - 1 Wend k = k - 1 Wend While temp(r, p) <> "" While temp(r, p) <> "" r = r + 1 Wend p = p + 1 Wend Set temp = Range(Cells(i-1, k-1).Address, Cells(r+1, p+1).Address) temp.Interior.ColorIndex = 36 End Sub 

有什么build议么? 提前致谢

使用:

 temp.CurrentRegion.Interior.ColorIndex = 36 

而不是循环。

如果你的While/Wend循环正在工作,你可以像下面这样设置temp Rangevariables:

 Set temp = Range(Cells(i-1, k-1), Cells(r+1, p+1)) '<~ no address needed 

这就是说,你已经在提示用户input了 – 你可以让他或她进入表格左上angular的单元格吗? 从那你的代码可以简化…