我對VBA還是有點新鮮,而且我很難將對象定義爲形狀。我有一個帶有矩形的Excel工作表,我想從我的VBA用戶窗體中的組合框中更改此形狀的顏色。我已經嘗試了下面的代碼和其他幾種方法,但是我一直在遇到「形狀」不是類型的錯誤,並且這阻止了我使用填充等成員。這可能有助於知道我正在使用VBA 2015,因爲我知道這兩年之間存在一些差異VBA 2015「形狀」類型undefined
Dim rectangle as Shape
rectangle = sheet1.shapes("rectangle 1")
rectangle.Fill.Forecolor.RGB = RGB(255, 255, 255)
您需要使用'Set'關鍵字爲變量分配對象時:'設置矩形= sheet1.shapes(「矩形1」)' – tigeravatar
在2015年你不需要爲了這個詞「套」分配對象。 「Let」和「set」不再受支持。工作很好,一起刪除「設置」一詞。但是仍然使用「形狀」類型,這是我遇到的問題 – Nicki
在將對象分配給對象變量時,您絕對需要使用「Set」關鍵字。以下是Office 2013及更高版本MSDN網站的官方文檔:https://msdn.microsoft.com/en-us/library/office/gg251642.aspx我無法找到任何內容來支持您的聲明Let and Set is不再支持。也許在Visual Basic或.NET中,或者在創建自定義類時都是如此? – tigeravatar