2015-06-23 64 views
3

請問我可以如何針對通過VBA使用AddShape創建的文本框的「允許文本溢出形狀」?我已經通過對象引用textframe/textframe2瀏覽過,沒有運氣。「允許文本溢出形狀」在excel 2010 vba

這可以在不VBA實現[但是我有很多文本框]由:

右鍵單擊[上文本框形狀] >>格式形狀>> >>文本框允許文本溢出形狀[複選框下在「自動調整」組]

我也做宏錄製無濟於事

建議大加讚賞

+0

感謝R3uK,下面的答案似乎解決了我的需要。 – flash

回答

4

你指的似乎Excel對象模型來影響兩個屬性,TextFrame.HorizontalOverflow和012設置。

VerticalOverflow可以設置爲:

  • xlOartVerticalOverflowClip - 沒有溢出
  • xlOartVerticalOverflowEllipsis - 溢出標有三個點(...
  • xlOartVerticalOverflowOverflow - 允許溢出

HorizontalOverflow只能設置爲:

  • xlOartHorizontalOverflowClip - 沒有溢出
  • xlOartHorizontalOverflowOverflow - 允許溢出

工作示例(Excel 2010中):

Sheet1.Shapes(1).TextFrame.VerticalOverflow = xlOartVerticalOverflowOverflow 

編輯

也看到在MSDN文檔,它說的是VerticalOverflow設置僅當AutoSize屬性爲,並且當TextFrame2.WordWrap屬性爲msoFalseHorizontalOverflow僅設置有效果有效果(0)。

+0

感謝Olle。正是我在找什麼。 – flash

+0

好的,太棒了!我還在MSDN上添加了對文檔的引用。 –

0

如果形狀很小,最好將垂直和水平都設置爲溢出。

Sheet1.Shapes(1).TextFrame.VerticalOverflow = xlOartVerticalOverflowOverflow 
Sheet1.Shapes(1).TextFrame.HorizontalOverflow=xlOartHorizontalOverflowOverflow 
Sheet1.Shapes(1).TextFrame2.WordWrap = msoFalse