tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^4: エクセルに画像を転送
投稿日: 2012/08/02(Thu) 14:59
投稿者VBレスキュー(花ちゃん)
横から割り込み、失礼します。

マナーとして、回答者を名指しで指名するような事はされない方がいいかと。

元々 jpg 形式で保存されているファイルは、圧縮処理がされているので、ファイルサイズは
小さくなっており、それを読み込んで解凍して表示しており、それを jpg 形式 で圧縮して
保存しているのなら兎も角そのままの状態で保存すれば当然元のサイズより大きくなるのは
当然の事かと思います。(JPG の圧縮率にもよるし)
その場合の Excel の保存処理がどのように行われているのかは知りませんが、JPG ファイルを
imageコントロール 上に表示した状態のまま保存すると通常の画像を保存する場合と違った
処理が付け加えられているのではないでしょうか(Excel の仕様)
jpg 形式 のファイルではなく、BMP 形式のファイルを使って同様に保存された場合は、元の
ファイルサイズ分位だけが増えるはずです。

そもそも、何の為にどのように表示したいのか? 貴方の目的に合った表示の仕方をされるべきかと
思います。(画像はリンク情報だけにするとか? 1. の方法で表示するとか?)

Private Sub Command1_Click()
   Dim xlApp    As Excel.Application
   Dim xlBook   As Excel.Workbook
   Dim xlSheet  As Excel.Worksheet
   Set xlApp = New Excel.Application
   Set xlBook = xlApp.Workbooks.Add
   Set xlSheet = xlBook.Worksheets(1)
   xlApp.Visible = True
  
   xlSheet.Range("B2").Select
   xlSheet.Pictures.Insert "c:\test.jpg"
  
   xlApp.DisplayAlerts = False
   xlSheet.SaveAs "c:\test.xls"
   Set xlSheet = Nothing
   xlBook.Close
   Set xlBook = Nothing
   xlApp.Quit
   Set xlApp = Nothing
End Sub

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。