我曾经知道 PowerPoint 中有一项功能可以执行以下操作:
- 复制一行,例如 4 个 Excel 单元格
- 在 powerpoint 中选择 4 个框
- 将单元格的内容粘贴到 4 个框的文本中
我并不是想粘贴表格或单个文本框,而是希望将单元格 1 的内容粘贴到框 1 中,将单元格 2 的内容粘贴到框 2 中,等等。
我似乎无法在网上或通过任何常规的反复尝试找到它。
有人熟悉此功能以及如何使用它吗?
编辑:
以下是我使用这款应用的一些截图
从 Excel 复制
选择 4 个文本框并粘贴到 powerpoint 中
多谢!
答案1
重新安装 Office 后我遇到了同样的问题,在自己和其他计算机上进行一些测试后,发现能够将一系列 Excel 单元格复制到多个文本框/形状中是由于我之前安装了 powerpoint 插件(Think-Cell)。
将范围从 Excel 复制到 PowerPoint 时的正常操作是将其粘贴为表格,即使您选择了多个形状。
答案2
这是我使用的。我没有编写代码,感谢作者:
Sub ConvertTableToTextboxes()
Dim slide As slide
Dim shape As shape
Dim i As Integer
' Loop through each slide in the active presentation
For Each slide In ActivePresentation.Slides
' Loop through each shape on the slide
For Each shape In slide.Shapes
' Check if the shape is a table
If shape.HasTable Then
' Loop through each row in the table
For i = 1 To shape.Table.Rows.Count
' Loop through each column in the table
For j = 1 To shape.Table.Columns.Count
' Get the text from the cell
Dim cellText As String
cellText = shape.Table.Cell(i, j).shape.TextFrame.TextRange.Text
' Create a new text box at the same position as the cell
Dim textBox As shape
Set textBox = slide.Shapes.AddTextbox(msoTextOrientationHorizontal, shape.Left + shape.Table.Cell(i, j).shape.Left, _
shape.Top + shape.Table.Cell(i, j).shape.Top, shape.Table.Cell(i, j).shape.Width, _
shape.Table.Cell(i, j).shape.Height)
' Set the text box text to the cell text
textBox.TextFrame.TextRange.Text = cellText
' Remove the cell from the table
'shape.Table.Cell(i, j).shape.Delete
Next j
Next i
' Remove the table shape
'shape.Delete
End If
Next shape
Next slide
子目录结束