KB0170:我可以在 LibreOffice/OpenOffice .odp 文件中使用 thinkcell 图表吗?

问题

在 PowerPoint 中打开 .odp 文件后,thinkcell 的大部分功能会丢失。一些底层图表主体仍然可用,但大多数功能将不可用(标签、箭头、甘特图等)。

例如,在以下情况下可能会出现此问题:

  1. 您正在与使用 OpenOffice.org 或 LibreOffice 的人员协作。因此,您将 PowerPoint 演示文稿(.pptx 或 .ppt 文件)另存为 OpenDocument Presentation(.odp 文件),以便将文件交给对方。之后您又将该文件重新导入 PowerPoint。
  2. 您打开一个 .odp 文件并插入 thinkcell 图表。然后将文件保存为 .odp 文件格式。

说明

在 PowerPoint 对象模型中,每个 PowerPoint.Shape 都有一个 Tags 集合,可用于存储有关对象的额外信息。thinkcell 使用这些标签来识别幻灯片上的哪些形状属于 thinkcell(详情请参阅 KB0073)。

PowerPoint 不会将这些标签导出到 .odp 文件格式中。因此,某些形状是 thinkcell 形状的信息会丢失。

您可以使用以下 VBA 宏自行检查,该宏会列出当前幻灯片上的所有形状及其标签: 阅读更多

Sub List_Tags()
  Dim oShape As PowerPoint.Shape
  Dim str As String
  Dim i As Integer
  For Each oShape In ActiveWindow.View.Slide.Shapes
    Debug.Print oShape.Name & "( " & oShape.Tags.Count & " tags)"
    For i = 1 To oShape.Tags.Count
      Debug.Print "    Tag(" & i & "): " & _
        "Name: " & oShape.Tags.Name(i) & ", " & _
        "Item:" & oShape.Tags.Item(i)
    Next i
  Next oShape   
End Sub

要运行宏,请使用 Alt+F11 打开 VBA 编辑器。选择您的工作簿,然后点击 Insert > Module。粘贴上面的宏,并按 F5 运行。