いつも参考にさせていただいています。 当方Win-10Pro EXCEL2016の環境です。
毎朝EXCELをタスクスケジュラーで起動させ、グラフを画像(JPG形式)で保存して、スクリーンセーバーの写真モードで複数のグラフを切り替えながら表示させようと思っています。
ステップインで実行すると、JPGファイルはグラフが入ったが画像になりますが、通常実行だと白紙の画像になってしまいます。 コードの途中で、Wait や Sleep を入れてもうまく行きません。
うまく行く方法をご教示ください。
<ThisWorkBook>
Private Sub Workbook_Open()
’グラフ画像化
Call imagesave
’EXCELを閉じる
Application.Quit
End Sub
<標準モジュール>
Option Explicit
Sub imagesave()
Dim myPrintArea As Range
Dim myCharts As Chart
Dim Filename As String
Dim cnt As Integer
Const myPass As String = "C:/utl/記録表/"
'保存ファイル名を設定
Filename = myPass & "5.kiroku.JPG"
'選択範囲を取得
Set myPrintArea = ThisWorkbook.Sheets("記録表").Range("Print_Area")
'選択した範囲を画像形式でコピー
myPrintArea.CopyPicture appearance:=xlScreen, Format:=xlPicture
'画像貼り付け用の埋め込みグラフを作成
Set myCharts = ActiveSheet.ChartObjects.Add(0, 0, myPrintArea.Width, myPrintArea.Height).Chart
'埋め込みグラフに貼り付ける
myCharts.Paste
'JPEG形式で保存
myCharts.Export Filename:=Filename, filtername:="JPG"
'埋め込みグラフを削除
myCharts.Parent.Delete
End Sub
実際は複数のシートのグラフをすべて画像で保存しようと思っていますが、割愛して一つだけに
しました。 それでもうまく行きません。
処理が速すぎて、画像処理が追い付かないのと思い、途中で wait や Sleep を 10秒程度いれて
見ましたが、いずれもダメでした。
No.3ベストアンサー
- 回答日時:
こんにちは
試してみましたが、Pasteメソッドの際にChartを明示的にアクティブにしておかないとうまくペーストできないようですね。(はっきりとは確認していませんが・・)
>myCharts.Paste
の前に1行追加して、
myCharts.Parent.Activate
myCharts.Paste
としたらうまく動作しませんか?
myCharts.Pasteの前に myCharts.Parent.Activate を1行追加した
ところうまく行きました。 ありがとうございました。 助かりました。
No.1
- 回答日時:
こんにちは。
doevents 入れてもダメですかね?
ダメならExcelを閉じる前に無限ループでファイルの存在確認を入れてみては?
do
if dir(ファイルパス)<>"' then
exit do
end if
doevents
loop
動作未検証です。
doevents 入れてもダメでした。
ファイル数が24個なら、プロシジャーの最後まで実施されるが、画像ファイルは白紙
ファイル数が48個なら、30分経っても画像ファイルが作られません。
ALT+F11 で Microsoft Visual Basic for Applications - [Module1(コード)]
になったまま停止。 ■のリセットボタンを押すと
Microsoft Visual Basic for Applications -[ブック名]- [Module1(コード)]
となる。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) Excel vbaについての質問 3 2023/04/18 16:14
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
- Visual Basic(VBA) 【VBA】Excelの特定範囲のセルを画像で保存したい 2 2023/01/25 13:06
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
このQ&Aを見た人はこんなQ&Aも見ています
-
10代と話して驚いたこと
先日10代の知り合いと話した際、フロッピーディスクの実物を見たことがない、と言われて驚きました。今後もこういうことが増えてくるのかと思うと不思議な気持ちです。
-
一回も披露したことのない豆知識
あなたの「一回も披露したことのない豆知識」を教えてください。 「そうなんだね」と「確かに披露する場所ないね」で評価します。
-
忘れられない激○○料理
これまでに食べたもののなかで、もっとも「激○○」だった料理を教えて下さい。 激辛、でも激甘でも。 激ウマ、でも激マズでも。
-
2024年のうちにやっておきたいこと、ここで宣言しませんか?
2024年も残すところ50日を切りましたね。 ことしはどんな1年でしたか? 2024年のうちにやっておきたいこと、 よかったらここで宣言していってください!
-
ギリギリ行けるお一人様のライン
おひとり様需要が増えているというニュースも耳にしますが、 あなたが「ギリギリ一人でも行ける!」という場所や行為を教えてください
-
【VBA】Excelの特定範囲のセルを画像で保存したい
Visual Basic(VBA)
-
エクセルのVBAでクリップボードにコピーした画像をpng(or jpg or bmp)保存したい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでグラフタイトルが折...
-
たくさん作った同じ設定のグラ...
-
エクセルにおける、グラフの指...
-
パワーポイントに貼り付けたエ...
-
イラレのグラフがグループ解除...
-
EXCEL・複数ある円グラフの円の...
-
エクセルグラフの一括設定。
-
エクセルのグラフの一部拡大
-
エクセル:ぴったり重なった後...
-
エクセルグラフの数値軸(Y)の...
-
Excelで、グラフ作ってるのだが...
-
EXCELでの棒グラフの太さについて
-
EXCELで海の潮見表(タイドグラ...
-
エクセル(Excel)の目盛りの一...
-
Wordでレポートを作っています...
-
Excelで作ったグラフをWordに貼る
-
~エクセル~円グラフのみを抽...
-
パワーポイントでグラフを作成...
-
Excel 2007 の棒グラフで差を表...
-
Excelで作ったグラフをIllustra...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルにおける、グラフの指...
-
エクセルでグラフタイトルが折...
-
たくさん作った同じ設定のグラ...
-
パワーポイントに貼り付けたエ...
-
EXCEL・複数ある円グラフの円の...
-
エクセルのグラフの一部拡大
-
エクセルグラフの一括設定。
-
イラレのグラフがグループ解除...
-
エクセルグラフの数値軸(Y)の...
-
~エクセル~円グラフのみを抽...
-
エクセル(Excel)の目盛りの一...
-
エクセル:ぴったり重なった後...
-
Excelで作ったグラフをIllustra...
-
excel 波形
-
EXCELでの棒グラフの太さについて
-
右肩上がりの由来
-
excel2010 グラフエリアの外の...
-
エクセルのグラフが作成した通...
-
エクセル作業中・・「参照が正...
-
EXCEL
おすすめ情報