devEMF导出和powerpoint问题

时间:2017-07-21 16:36:41

标签: r plot powerpoint

我的工作流程最近出现了一些问题。我通常使用devEMF包将Rplots打印为.emf文件,然后在powerpoint中编辑它们。 [将emf文件导入powerpoint,右键单击图像,然后选择取消组合。]但是,最近,当我"取消组合时,powerpoint不识别矢量格式。"

我使用的是Windows机器和powerpoint 2016.

任何想法都会非常有帮助。 内特

1 个答案:

答案 0 :(得分:1)

这里只留下明确的答案--Powerpoint还不允许对EMF +图形进行编辑("取消组合")。因此,解决方案是告诉devEMF不使用emfPlus功能(缺点是透明度等功能不可用):

Sub MergeDataFromWorksheets()
    Dim sh As Worksheet
    Dim DestShe As Worksheet
    Dim erow As Long, lrowsh As Long, Startrow As Long
    Dim CopyRng As Range
    Startrow = 2
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
    End With

    'Delete the sheet "MyMergeSheet"
    Application.DisplayAlerts = False
    On Error Resume Next
    ActiveWorkbook.Worksheets("MyMergeSheet").Delete
    On Error GoTo 0
    Application.DisplayAlerts = True

    'Add a worksheet with the name "MyMergeSheet"
    Set DestSh = ActiveWorkbook.Worksheets.Add
    DestSh.Name = "MyMergeSheet"
    'loop through all worksheets and copy the data to the DestSh
    For Each sh In ActiveWorkbook.Worksheets
        If shtName <> DestSh.Name Then
            'Find the next blank or empty row on the DestSh
            erow = DestSh.Range("A" & Rows.Count).End(x1UP).Offset(1, 0).Row
            'Find the last row with data in the Sheet
             lrowsh = sh.Range("A" & Rows.Count).End(xlUp).Row

            Set CopyRng = sh.Range(sh.Rows(Startrow), sh.Rows(lrowsh))

            'copies values/formats
            CopyRng.Copy
            With DestSh.Cells(erow, 1)
                .PasteSpecial x1PasteValues
                .PasteSepcial x1PasteFormates
                Application.CutCopyMode = faluse

            End With

        End If
    Next

    DestSh.Cells(1, 1) = "Current Period Update"
    DestSh.Cells(1, 2) = "Deficiency Reference #"
    DestSh.Cells(1, 3) = "Audit Report Number"
    DestSh.Cells(1, 4) = "IA Reference #"
    DestSh.Cells(1, 5) = "Identifier"
    DestSh.Cells(1, 6) = "Control Matrix Ref. #"
    DestSh.Cells(1, 7) = "Category"
    DestSh.Cells(1, 8) = "Region"
    DestSh.Cells(1, 9) = "Location"
    DestSh.Cells(1, 10) = "Control Activity"
    'AutoFit the column width in the DestSh sheet
    DestSh.Columns.AutoFit

    With Application
        .ScreeUpdating = True
        .EnableEvents = True
    End With
End Sub

原始海报的评论有效,因为旧版本的devEMF默认情况下不使用emfPlus。