在Excel中将Excel表格拉伸到PowerPoint中
我试图通过C#展开PowerPoint中的表格
表格已经从Excel复制到PowerPoint中,问题是粘贴表格的内容很小,无法读取。
我正在做的基本上是,复制HTML文件到
Clipboard.SetText(html);
将其粘贴到Excel范围内
sheet.Range(cellmapp).PasteSpecial(); sheet.Columns.AutoFit(); sheet.Rows.AutoFit(); sheet.UsedRange.Copy(Missing.Value);
现在,我想要将它粘贴到PowerPoint中的正确位置
foreach (PowerPoint.Slide slide in presentation.Slides) { foreach (PowerPoint.Shape pptshape in slide.Shapes) { if (!pptshape.Type.ToString().Equals("msoAutoShape") && pptshape.AlternativeText.Contains("|")) { if (xlsSheetName == pptSheetName && xlsShapeName == pptxlsShapeName) { ppApp.ActiveWindow.View.PasteSpecial(); } } } }
它在我select的地方在PowerPoint中复制我的表格。
但问题在于,桌子太小,太小,太小,太小。
C#中有一个伸缩函数吗?
谢谢。
你也可以:
- 在Excel中select你需要的所有单元格
- 将它们复制到剪贴板中
- 粘贴在Powerpoint
-
调整形状表的大小
var clipbordCache = Clipboard.GetDataObject();
//复制excel …
/ /粘贴在PowerPoint中
var table = slide.shapes.Paste(); Clipboard.SetDataObject(clipbordCache);
//调整
table.Width = 200;
我曾经做过类似的事情 – 如果我没有记错,你必须设置新的表格对象的宽度/高度属性更大(取决于你的工作表的布局),但Powerpoint可能会忽略,如果文本太小 – 在这种情况下,只需调整每个单元格的.font.size属性即可。
作为一个额外的尝试:给定excel粘贴表格的糟糕布局以及修改表格对象的速度时,根据自己的喜好创build一个powerpoint表格可能会更快,然后将excel中的值粘贴到新表格中。 只需遍历每个单元格并为.text属性赋值。 如果可以使用默认的PowerPoint样式,则可以通过编程方式将每个表设置为样式,然后search表格对象的.style属性。