2015-12-30 33 views
0

當我錄製宏,我得到調整大小commentbox圖片大小練成2013

Range("C1").Select 
Range("C1").AddComment 
Range("C1").Comment.Text Text:="Blabla" 
Selection.ShapeRange.ScaleHeight 2.3, msoFalse, msoScaleFromTopLeft 
Selection.ShapeRange.ScaleWidth 23.1, msoFalse, msoScaleFromTopLeft 

在運行此代碼的結果:

運行時錯誤「438」:對象不支持此屬性或方法

任何人的任何想法?

回答

1

您可以直接使用該Comment

With Range("C1") 
    .AddComment Text:="Blabla" 
    With .Comment.Shape 
     .ScaleHeight 2.3, msoFalse, msoScaleFromTopLeft 
     .ScaleWidth 23.1, msoFalse, msoScaleFromTopLeft 
    End With 
End With 
+0

羅裏感謝,也許你能回答這個http://stackoverflow.com/questions/34518872/excel-2013-format-comment-tab-size-press-reset-button-with-vba?noredirect= 1#comment56779121_34518872?或這http://stackoverflow.com/questions/34519945/excel-2013-vba-get-picture-in-comment-height –

+0

而爲什麼不工作msoTrue參數? –

+0

每個幫助:「只有指定的形狀是圖片或OLE對象時,纔可以爲此參數指定msoTrue。」 – Rory

1

同樣的,羅裏。 如果評論已經存在,我會在添加評論前先添加clearcomments以避免錯誤。

Sub AddCommentAndResize() 

With Range("C1") 
    .ClearComments 
    .AddComment Text:="Blabla" 
    With .Comment.Shape 
     .ScaleHeight 2.3, msoFalse, msoScaleFromTopLeft 
     .ScaleWidth 23.1, msoFalse, msoScaleFromTopLeft 
    End With 
End With 

End Sub