首页 > 解决方案 > C# 中的 Powerpoint/ExecuteMSO 命令未立即执行。由于这个原因,命令后面的代码行导致混乱

问题描述

以下是我用来剪切的代码 - 将 powerpoint 表中的现有列粘贴到新添加的列中。粘贴后,我正在执行一些操作,例如合并粘贴列中的单元格。我唯一发现的是在运行executemso命令后该列仍然没有粘贴,但是一旦函数执行结束,我就能够看到该列正确粘贴在UI上,但是合并单元格的操作被覆盖了与糊状物,这表明实际的糊状物发生得太晚了......

        Shape.Table.Columns.Add(1);
        Shape.Table.Columns[1].Width = Shape.Table.Columns[3].Width;
        Shape.Table.Columns[3].Select();
        Toolbox.Application.ActiveWindow.Selection.Cut();
        Shape.Table.Columns[1].Select();            
       
       
      Toolbox.Application.CommandBars.ExecuteMso("PasteSourceFormatting");
        PowerPoint.Cell celltoMerge = Shape.Table.Columns[1].Cells[2]; // at this point columns are not actually pasted 
        celltoMerge.Merge(Shape.Table.Columns[1].Cells[3]);

...

标签: c#powerpointoffice-interopcomaddin

解决方案


推荐阅读