プロが教えるわが家の防犯対策術!

お世話になります。
VB2005で、

Clipboard.SetImage(ビットマップが入った変数)
.cells( i , j ).select()
.Paste
x = (ビットマップが入った変数).height
i = i + int( x / 13.5 + 1 ) + 1

(13.5はExcelの一行のピクセル数)
というコードで、ビットマップをExcelに張り付けたあと、そのビットマップの下端の次付近の適切な行(i行)に移動しようとしています。

しかし、
・貼り付けられた画像は、ビットマップの大きさより小さくなっている。
・仮にその高さのビットマップを手動で貼り付けても、その高さを13.5で割ると、貼りつけられたその高さより多い行数になってしまう。

という現象が起こり、不要な空行がたくさんできてしまいます。

適切な場所を決める、よい計算方法を、どなたかご存知でしたらご教示いただけますと幸いです。

A 回答 (1件)

13.5というのはピクセル数ではないのでは?


ピクセル数が整数ではないのが何だか引っかかります。

おそらくポイント数ではないでしょうか?

Windowsの場合、通常は、
13.5ポイント=13.5*96/72=18ピクセルです。

この回答への補足

一番目の問題は、用意していたExcelファイルの行の高さが13.5ポイントではなかった、というお恥ずかしい原因、と分かり、解決しました。

補足日時:2013/09/23 21:55
    • good
    • 0
この回答へのお礼

親切なご回答いただきありがとうございます。
基本的なことを分かっておらず、大変お手数おかけしました。
おかげさまで上記の2つのうち2番目の現象を解消することができ、だいぶ状況はよくなりました。

お礼日時:2013/09/19 22:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!