[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『エクセルの表を1行ずつパワポの1スライドにはりつけるVBA』(柊)
お世話になります。初心者です。
エクセルの表を1行ずつパワポの1スライドに貼り付けるVBAについてです。
イメージとしましては
行に1セルずつ「個数」「商品」「売上個数」と横に並んでいて、列に「1月」「2月」「3月」…と縦に並んでいます。
個数 商品 売上個数 1月 100 りんご 50 2月 230 トマト 100 3月 280 いちご 200 4月 350 メロン 350 5月 390 もも 390 6月 410 なし 200
この表を1行ごとにパワポの1スライドに貼り付けたいです。
1月の「個数」「商品」「売上個数」を1スライド目に
2月の「個数」「商品」「売上個数」を2スライド目に
3月の「個数」「商品」「売上個数」を3スライド目に…
といったようなイメージです。
出来ればテキストではなくエクセルの表の書式(セルの幅やフォントなど)のまま貼り付けていきたいです。
このようなことは可能でしょうか。
ご教授いただければ幸いです。
< 使用 Excel:Excel2016、使用 OS:unknown >
とりあえず、値だけでもコピペする例なぞ。 書式がほとんど消えてしまうので、テーブル追加してから個々に代入すべきなのかも?
Sub test() Const ppLayoutBlank = 12 Dim i As Long
With CreateObject("PowerPoint.Application") With .Presentations.Add For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row Cells(i, "A").Resize(1, 4).Copy With .Slides.Add(i - 1, ppLayoutBlank) .Shapes.PasteSpecial End With Next i End With End With End Sub (???) 2020/09/15(火) 12:03
早速使わせていただきます。
(柊) 2020/09/15(火) 13:29
Sub test2() Const ppLayoutBlank = 12 Const ppPasteEnhancedMetafile = 2 Dim i As Long
With CreateObject("PowerPoint.Application") With .Presentations.Add For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row Cells(i, "A").Resize(1, 4).Copy With .Slides.Add(i - 1, ppLayoutBlank) .Shapes.PasteSpecial DataType:=ppPasteEnhancedMetafile End With Next i End With End With End Sub (???) 2020/09/15(火) 13:30
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.