2012年1月23日月曜日

生命保険金(入院・手術特約) その後

去年末にJAに連絡して再査定してもらった結果の連絡がありました。

開胸手術が認められ手術による保険金が大幅UPしました。

でも、これって見逃しそうだよなぁ。。。。

明細も送られてこないし(一括でいくらって通知はきましたが)

手術された方は受取った保険料を見たほうが良いよ。

結構、簡単な手続きだし(電話一本で)

また、保険会社に渡す医師の診断書もコピーしておく事を勧めます。

妻に「このお金でPC新調しちゃ駄目」って先手打たれたw

2012年1月7日土曜日

ACCESSの実行画面をMSペイントに出力

たまには技術ネタも書け!とお叱りを受けそうなのでw

ACCESSを使用したシステムでハードコピーをボタン等でしたい。
出来たハードコピーはペイントで見たい との案件。
とりあえず思いついたのがクリップボード経由での受け渡し。
ただ出力先がMSペイント指定なのでめんどくさい。
しかもACCESSにクリップボード操作はサポートされてないようだし。

安直に
[prt sc]を画面から投げてクリップボードに画面コピー後
MSペイントを起動させて[Ctr+v]を投げる事を考えた。

最初 SendKeysで[scr sc]を投げたけど取れない。
ググったらどうも使えない事があるらしい。
めんどくさいけどAPIを一部使用。

以下がそのソース(簡易版w)

--------------------------------------------------------------------------------------
Option Compare Database

Public Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _
    ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

'画面をクリップボードにコピー
Public Sub subGetSnapShot()
   
    '[prt sc]Key 送信
    Call keybd_event(CByte(vbKeySnapshot), 0, 0, 0)
    Call keybd_event(CByte(vbKeySnapshot), 0, 2, 0)
   
End Sub

'ペイント起動後、クリップボードをペースト
Public Sub subOutClipBord()

    Dim objShell    As New WSHShell
    Dim objExe      As WshExec
   
    'MSPaint起動
    Set objExe = objShell.Exec("mspaint.exe")
   
    '起動待ち
    Do Until objShell.AppActivate(objExe.ProcessID)
    Loop
   
    '[Ctr+V]key 送信
    SendKeys "^v"
   
    '参照破棄
    Set objExe = Nothing
    Set objShell = Nothing

End Sub

'画面をペイントに出力
Public Sub subOutForm()

    '画面取得
    Call subGetSnapShot
   
    '制御をWindowsに一時戻す
    DoEvents
   
    'ペイントへ出力
    Call subOutClipBord

End Sub
--------------------------------------------------------------------------------------

参照設定に[Windows Script Host Object Model]を設定して
画面から上記[subOutForm]をコールすればとりあえず動くはず^_^;

マシンのスペックが古いと時間が掛かりますし
実行中の操作で不具合が発生する可能性もありますがw
参考程度に(^^ゞ

試行錯誤してたから1日掛かったorz・・・