VBA(office365)で、エクセルをコピーしてパワポに貼り付け時にエラーが出ます。
下記コードを使用しているのですが、、
sl.Shapes.PasteSpecial DataType:=ppPasteEnhancedMetafile, Link:=msoFalse
このコードの時に、
実行時エラー:2147188160(80048240)
Shapes(不明なメンバー):無効な要求です。指定した種類のデータは使用できません。
と出ます。うまく行くときもあるのですが、最近うまくいかなくなってしまい、エクセルのcopyの後に、待ち時間
Application.Wait now + Timevalue(”0:00:10”)
を設定してみましたが、現象は変わりません。そもそも何が原因なのでしょうか?サーバーに保存しているパワポを開いて貼り付けているのが原因でしょうか?
Excel 側から何をクリップボードにコピーされているのでしょうか。
その辺りの一連のコードも明記されることをお奨めします。
セルをコピーしてそれをパワポに貼り付けています。
コードは下記です。
Dim sl As PowerPoint.Slide
Dim countSld As Integer
Dim ppPt As Presentation
Dim ppApp As New PowerPoint.Application
namae = ActiveWorkbook.Name
ActiveWindow.View = xlNormalView
shito = ActiveSheet.Name
shita = Cells(Rows.Count, 98).End(xlUp).Row
Set ppPt = ppApp.Presentations.Open("サーバーのパワポファイルを指定")
ppPt.PageSetup.SlideSize = ppSlideSizeOnScreen
LT_Row = 10
LT_Col = 1
RL_Col = 96
RL_Row = 51
Do Until ActiveCell.Row >= shita + 1
If ActiveCell.Interior.ColorIndex = 1 Then
Range(Cells(LT_Row, LT_Col), Cells(RL_Row, RL_Col)).Select
Selection.Copy
With ppPt.Slides
Set sl = .Add(Index:=.Count + 1, Layout:=ppLayoutBlank)
End With
sl.Shapes.PasteSpecial DataType:=ppPasteEnhancedMetafile, Link:=msoFalse '←ここでエラーが出ます
sl.Shapes(2).LockAspectRatio = msoFalse
sl.Shapes(2).Left = 0
sl.Shapes(2).Top = 0
sl.Shapes(2).Width = 720
sl.Shapes(2).Height = 541
回答1件
あなたの回答
tips
プレビュー