【发布时间】:2016-06-12 23:53:49
【问题描述】:
我在 MS Excel 中使用宏将数据从 PowerPoint 中的文本框导入 Excel。
它正在以文本格式导入数据,无法从文本框中复制换行符
Range("a1").Value = pps.Shapes("textbox 1").TextFrame.TextRange.Text
任何人都可以提出替代解决方案吗?
【问题讨论】:
标签: excel powerpoint vba
我在 MS Excel 中使用宏将数据从 PowerPoint 中的文本框导入 Excel。
它正在以文本格式导入数据,无法从文本框中复制换行符
Range("a1").Value = pps.Shapes("textbox 1").TextFrame.TextRange.Text
任何人都可以提出替代解决方案吗?
【问题讨论】:
标签: excel powerpoint vba
最新版本的 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 FAQ 上的这个页面解释了详细信息:
http://www.pptfaq.com/FAQ00992_Paragraph_endings_and_line_breaks.htm
【讨论】: