VBで作成した透過画像をExcelに貼り付けるには


ray  2007-07-21 00:32:40  No: 99196

失礼します。

業務でVB6を使うことになったのですが、ほとんど触ったことのない言語でして、試行錯誤の段階です。

直面している問題は、
VB6で,作成した透過Gifをクリップボード、Oleのドラッグドロップを使って、Excelに貼り付けたいのです。

クリップボードなどに格納すると、背景は常に白に設定されてしまい透過を維持できません。

ご教授お願いします。


ray  2007-07-21 00:34:49  No: 99197

>クリップボードなどに格納すると、背景は常に白に設定されてしまい透過を維持できません。

間違いでした。

正しくは、
透過せずに元の色がそのまま表示される。

透過色を白に指定していた場合は、そのまま白として表示される。

ということです。

すいません。


魔界の仮面弁士  2007-07-21 05:16:01  No: 99198

Excel に透過画像として貼りたいなら、メタファイル化しないと駄目かも。

または、その画像貼り付けた後、Shape(または ShapeRange オブジェクト)の
.PictureFormat.TransparencyColor を使って、背景色を透過させるとか。


ray  2007-07-25 00:50:06  No: 99199

なるほど、メタファイル化するのですね。

やってみた結果、うまく貼り付けることに成功しました。

-------------------------------------------------------------------
そこで、新たな問題が発生したのでいいでしょうか?

Excelに貼り付けた後、印刷するとExcel上で見ている画像よりも若干大きく印刷されてしまいます。

これを解決するのにはどうしたらいいのでしょうか?


ray  2007-07-25 00:50:14  No: 99200

なるほど、メタファイル化するのですね。

やってみた結果、うまく貼り付けることに成功しました。

-------------------------------------------------------------------
そこで、新たな問題が発生したのでいいでしょうか?

Excelに貼り付けた後、印刷するとExcel上で見ている画像よりも若干大きく印刷されてしまいます。

これを解決するのにはどうしたらいいのでしょうか?


魔界の仮面弁士  2007-07-25 23:57:12  No: 99201

悲しいことに、それはどうにもならないかも。
印刷時のずれは、Excel の宿命ということで…。
http://bbs.pc21.nikkeibp.co.jp/keyword-342


ray  2007-07-27 07:51:35  No: 99202

魔界の仮面弁士さん、ものすごく的確な固体ありがとうございます。

半分あきらめているのですが、最後にひとつお答えいただけますか?
excelにコピペしたあと、大きさ調整などした後に印刷するとExcel上のメタファイルの大きさと、印刷される大きさが一致するという事実を見つけました。

この動作はどういうことなのでしょうか?

また、メタファイルでも大きさが正しく表示されるものもあることもわかりました。

ということは、自作したイメージであろうともどうにかすれば正しい大きさで、貼り付けれるように思うのですが、どうなのでしょうか?

たとえば、クリップアートは基本的にメタファイルですが、大きさは見た目も印刷時も変わりありません。


K.J.K.  2007-07-27 18:46:00  No: 99203

メタファイルはどのように作ったものですか?
また、拡張子がwmfのものでしょうか? emfのものでしょうか?
# excelはsvgには対応してたかな?

emfの場合は、デバイス依存の大きさというのも記録されています。
ですから、そこのフィールドが意図した数値であるかどうかで
このような問題が十分に起きえます。ここの過去ログだと、
http://madia.world.coocan.jp/cgi-bin/VBBBS/wwwlng.cgi?print+200702/07020033.txt
辺りでしょうか。

wmfの場合でも、APMヘッダがあるものならば同様に考えられます。

で、話を戻して、GIFそのままでのやりとりですが、Excelは対応している
はずです。Excel内で図形を作りそれをコピーしてみてください。そして
[編集]-[形式を選択して貼り付け]を選んでみてください。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加