将数据从powerpoint文本框复制到Excel单元格

时间:2016-06-12 11:23:56

标签: excel-vba powerpoint-vba vba excel

我在MS Excel中使用宏将数据从PowerPoint中的文本框导入Excel。

它以文本格式导入无法从文本框中复制换行符的数据

Range("a1").Value = pps.Shapes("textbox 1").TextFrame.TextRange.Text

任何人都可以建议替代解决方案吗?

1 个答案:

答案 0 :(得分:2)

最新版本的PowerPoint使用Chr $(11)作为换行符。看起来Excel想要一个换行符Chr $(10),所以像这样:

Range("a1").Value = Replace(pps.Shapes("textbox 1").TextFrame.TextRange.Text,Chr$(11), Chr$(10))

PPT对段落结尾与换行符使用不同的字符,并且版本之间有所不同,因此如果您需要支持PPT 2003及更早版本,则需要更多代码。

我维护的PPT常见问题解答中的这个页面解释了详细信息:

http://www.pptfaq.com/FAQ00992_Paragraph_endings_and_line_breaks.htm