Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


4321 / 13644 ツリー ←次へ | 前へ→

【57318】シートに挿入されている写真をjpgとして取り出す方法 とも 08/8/7(木) 12:59 質問[未読]
【57319】Re:シートに挿入されている写真をjpgと... kanabun 08/8/7(木) 13:32 発言[未読]
【57320】Re:シートに挿入されている写真をjpgと... Yuki 08/8/7(木) 13:49 発言[未読]
【57321】Re:シートに挿入されている写真をjpgと... とも 08/8/7(木) 16:12 お礼[未読]
【57323】Re:シートに挿入されている写真をjpgと... kanabun 08/8/7(木) 21:20 発言[未読]
【57324】Re:シートに挿入されている写真をjpgと... n 08/8/7(木) 22:11 発言[未読]
【57325】Re:シートに挿入されている写真をjpgと... takata 08/8/7(木) 23:29 お礼[未読]
【57326】Re:シートに挿入されている写真をjpgと... kanabun 08/8/7(木) 23:35 発言[未読]

【57318】シートに挿入されている写真をjpgとし...
質問  とも  - 08/8/7(木) 12:59 -

引用なし
パスワード
   シート1に挿入されている写真をjpgとしてデスクトップに取り出す方法は
無いのでしょうか?
有れば教えていただけないでしょうか?
宜しくお願いいたします。

【57319】Re:シートに挿入されている写真をjpg...
発言  kanabun  - 08/8/7(木) 13:32 -

引用なし
パスワード
   ▼とも さん:

>シート1に挿入されている写真をjpgとしてデスクトップに取り出す方法は
>無いのでしょうか?

シート上の図や画像をjpgファイルとして保存するには

SaveCBPictureAs

でググってみると、shiraさんという方の関数がみつかると思います。

【57320】Re:シートに挿入されている写真をjpg...
発言  Yuki  - 08/8/7(木) 13:49 -

引用なし
パスワード
   ▼とも さん:
>シート1に挿入されている写真をjpgとしてデスクトップに取り出す方法は
>無いのでしょうか?
>有れば教えていただけないでしょうか?
>宜しくお願いいたします。

こんにちは。
簡単にこんな感じでしょうか

Sub Macro1()
  Dim cObj  As ChartObject
  Dim sW   As Single
  Dim sH   As Single
  
  ' 選択された画像をコピー
  With Selection
    .CopyPicture Appearance:=xlScreen, Format:=xlPicture
    sW = .Width
    sH = .Height
  End With
  
  Set cObj = ActiveSheet.ChartObjects.Add(0, 0, sW, sH)
  With cObj
    .Chart.Paste
    .Chart.Export Filename:="D:\Excel\Test7\testABC.jpg"
    .Delete
  End With
  Set cObj = Nothing
End Sub

【57321】Re:シートに挿入されている写真をjpg...
お礼  とも  - 08/8/7(木) 16:12 -

引用なし
パスワード
   Yukiさん、kanabunさん
早速のご教授有難う御座いました。
Yukiさんのでやってみたら、出来ましたので
使わせていただきます。
有難う御座いました。
いつもここで、教えていただいた事を
とりあえず使わせていただく訳なんですが
その内容について、私自身が理解するのに苦労します。
ご親切に教えていただいたことを「無」に
しないように、学習していきますので
今後とも宜しくお願いいたします。


>▼とも さん:
>>シート1に挿入されている写真をjpgとしてデスクトップに取り出す方法は
>>無いのでしょうか?
>>有れば教えていただけないでしょうか?
>>宜しくお願いいたします。
>
>こんにちは。
>簡単にこんな感じでしょうか
>
>Sub Macro1()
>  Dim cObj  As ChartObject
>  Dim sW   As Single
>  Dim sH   As Single
>  
>  ' 選択された画像をコピー
>  With Selection
>    .CopyPicture Appearance:=xlScreen, Format:=xlPicture
>    sW = .Width
>    sH = .Height
>  End With
>  
>  Set cObj = ActiveSheet.ChartObjects.Add(0, 0, sW, sH)
>  With cObj
>    .Chart.Paste
>    .Chart.Export Filename:="D:\Excel\Test7\testABC.jpg"
>    .Delete
>  End With
>  Set cObj = Nothing
>End Sub

【57323】Re:シートに挿入されている写真をjpg...
発言  kanabun  - 08/8/7(木) 21:20 -

引用なし
パスワード
   ▼とも さん:

>Yukiさんのでやってみたら、出来ましたので
>使わせていただきます。

てことは、もうひとつの方法は 試されてもいないってことなんでしょうか?

グラフの Export メソッドを使う方法と
SaveCBPictureAs 関数を使う方法とでは
保存される画像が異なります。
(Chart.Export を使って保存すると 画像の周囲が 白い縁 で 縁取りされます)

【57324】Re:シートに挿入されている写真をjpg...
発言  n  - 08/8/7(木) 22:11 -

引用なし
パスワード
   白い縁は

With cObj
  With .Chart
    .Paste
    .ChartArea.Border.LineStyle = 0
    .Shapes(1).Left = -3.45
    .Shapes(1).Top = -3.45
    .Parent.Width = .Shapes(1).Width - 0.05
    .Parent.Height = .Shapes(1).Height - 0.05
    .Export Filename:="D:\Excel\Test7\testABC.jpg"
  End With
  .Delete
End With

こんな感じで微調整すればなんとかなるかもです。
#-3.45 や -0.05 は環境によって違うかもしれませんが

【57325】Re:シートに挿入されている写真をjpg...
お礼  takata  - 08/8/7(木) 23:29 -

引用なし
パスワード
   >(Chart.Export を使って保存すると 画像の周囲が 白い縁 で 縁取りされます)

以下、53番の kCellExport関数 だとシート上の画像のとおりで保存されます。

E97M053 グラフや表を図形ファイルとして保存する
  //homepage2.nifty.com/kmado/kvba.htm

【57326】Re:シートに挿入されている写真をjpg...
発言  kanabun  - 08/8/7(木) 23:35 -

引用なし
パスワード
   ▼takata さん:
>>(Chart.Export を使って保存すると 画像の周囲が 白い縁 で 縁取りされます)
>
>以下、53番の kCellExport関数 だとシート上の画像のとおりで保存されます。
>
>E97M053 グラフや表を図形ファイルとして保存する
>  //homepage2.nifty.com/kmado/kvba.htm

サイズが 白縁分 ちっちゃくなったりしませんか?

4321 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free