2017年7月
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

« 2010年1月 | トップページ | 2010年4月 »

2010年2月21日 (日)

▲VBScript(文字列をクリップボードへコピー)

 VBScriptネタ初投稿です。
 今、VBScriptでいろいろツールを作成しているのですが、VBScript初心者の私にとってはVBAと同じなようで結構違いがあって戸惑っています。メーラーに文字列をSendKeysで流し込もうとしたのですが全角文字が文字化けしてしまいます。そこでクリップボード経由で貼り付けようとしたのですがVBScriptはクリップボードが不得手のようですね。
 クリップボード使用方法として世間ではIEオブジェクトを利用したりInputBoxを利用したりといったサンプルが花盛りのようです。詳細は紹介サイトを検索していただきたいのですが、IEはセキュリティの問題があったり、InputBoxはVBScript単体で処理できる利点がありますが一瞬画面が表示されるのが残念です。
 万人向けではありませんが、Excelを持っている方(特に会社では有効だと思いますが)向けに以下の方法を考えてみました。どうでしょうか?
 実際はメーラーを想定していますが、このサンプルはエクスプローラを起動してアドレス欄に文字列を貼り付けるものです。毎回Excelオブジェクトを生成しては削除する構造はちょっといかがなものかなと思いますがまぁそこは大目に見てやってくださいね。Sleepタイムは皆様のPCに合わせて調整してみてください。

option explicit

Dim arg,wsh
set wsh = CreateObject("WScript.Shell")

arg="進捗状況" & Mid(Replace(FormatDateTime(Now, 1),"/",""),3)

'クリップボードに文字列コピー
Call RangeCopy( arg )
WScript.sleep 300

'エクスプローラに貼り付け
wsh.run "c:\windows\explorer.exe"
WScript.sleep 800
wsh.sendkeys "{TAB 2}"
WScript.sleep 300
wsh.sendkeys "^v"

set wsh = Nothing
WScript.Quit

'#########################################
'# クリップボードに文字列コピー
'#
'# 引数 arg:対象文字列
'# 戻り値 なし
'#########################################
Public Sub RangeCopy( arg )
Dim oExl,oWb
set oExl = WScript.CreateObject("Excel.Application")
set oWb = oExl.WorkBooks.Add()

With oExl.Sheets(1).Range("A1")
.value = arg
.copy
End With

oExl.DisplayAlerts = False
oWb.close
oExl.Quit
set oWb = Nothing
set oExl = Nothing

End Sub

2010年2月12日 (金)

◆自動ログインツール(ソース表示について)

 自作の自動ログインツールを公開していますが、このツールを使うにはログインサイトのソース表示が不可欠ですが、たまにソース表示ができないサイトがあります。
自宅ではSleipnirを愛用しているのでソースが表示できないことは無いのですが、会社ではIE限定なので、表示できないワザが施されていると表示できないケースがあります。
 世間ではソース表示できないサイトを表示するワザとかが公開されていますが、最近知ったソースを簡単に表示する方法を書いてみたいと思います。

このワザはIE8が前提となります。
(1)IE8ではF12を押下すると、開発者ツールなるものが起動できます。このツールは一所懸命ソース表示させないワザを施していたとしても強制的(?)にソース表示ができてしまうのですね。HTMLタブのタグを開いていけば見れてしまいます。お試しアレ。
Kaihat

(2)さらに、IE8のツールバーアイコンにはソース表示というアイコンが隠されています。これを表示しておけばクリックひとつでソース表示ができてしまいます。ツールバー上で右クリックし、「カスタマイズ」の「コマンドの追加と削除」で追加すればOKです。お試しアレ。
Icon

« 2010年1月 | トップページ | 2010年4月 »