Word2007限定:ファイル読込直後にShift+F5を効かせる

2011/07/18 : 間違えましたすいません。詳細は下記追記にて。

結論:以下の VBA コードを Normal.dotm に追加すれば OK。

(a) 標準モジュール ( 「Module1」など )

Sub AutoExec()
    KeyBindings.Add _
          KeyCode:=BuildKeyCode(wdKeyShift, wdKeyF5) _
        , KeyCategory:=wdKeyCategoryMacro _
        , Command:="JumpShiftF5_2007"
End Sub

Sub JumpShiftF5_2007()
    If ActiveDocument.Bookmarks.Exists("_GoBack") Then
        Selection.GoTo What:=wdGoToBookmark, Name:="_GoBack"
        ActiveDocument.Bookmarks("_GoBack").Delete
    Else
        Application.GoBack
    End If
End Sub

(b) クラスモジュール ( 「clsGoBack」 )

Public WithEvents appGoBack As Word.Application

Private Sub appGoBack_DocumentBeforeSave( _
    ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)

    If Application.Documents.Count = 0 Then Exit Sub
    If ActiveDocument.Bookmarks.Exists(bmGoBack) Then
        ActiveDocument.Bookmarks(bmGoBack).Delete
    End If
    ActiveDocument.Bookmarks.Add _
          Name:=bmGoBack _
        , Range:=ActiveDocument.ActiveWindow.Selection

End Sub
以下、手順。
  1. Word2007 を起動します。
  2. Alt+F11 で、VBAエディタを起動します。
  3. プロジェクトエクスプローラ ( Ctrl+Rで表示されます ) から「Normal」を右クリックし、[挿入]-[標準モジュール] を選択します。
    「Normal」に何も手を入れていなければ、[Normal]-[標準モジュール] の下に、「Module1」が追加されます。
  4. 3. で作成した「Module1」をダブルクリックします。
    「Module1」が開き、コードエディタに表示されます。
  5. 上述のコード (a) をコピーして、「Module1」のコードエディタに貼り付けます。
  6. プロジェクトエクスプローラから「Normal」を右クリックし、[挿入]-[クラスモジュール] を選択します。
    「Normal」に何も手を入れていなければ、[Normal]-[標準モジュール] の下に、「Class1」が追加されます。
  7. 6. で作成した「Class1」をダブルクリックします。
    「Class1」が開き、コードエディタに表示されます。
  8. プロパティウィンドウ ( F4 で表示されます ) から、「(オブジェクト名)」を「clsGoBack」に変更します。
  9. 上述のコード (b) をコピーして、「clsGoBack」のコードエディタに貼り付けます。
  10. Word2007のウィンドウに戻って、終了します。
    5.、9. で貼り付けた内容は自動的に保存されますので、特に保存操作をしなくても大丈夫です。

全文表示 »

Small Basic 正式版(1.0) リリース!

なんだか知らぬ間に、Small Basic が正式版 ( 1.0 ) になっておりました。
おめでとうございます。
でもって教えてくださった @naoki0311 さん、ありがとうございました。

内容は、前回の 0.95 からほとんど変わっていません。
Small Basic blog によると、

  • アイスランド語対応、合計 20 ヶ国語で使えるようになりました。
  • セットアッププログラムとバージョン情報を変更しました。
  • 文字列編集のバグをいくつかフィックスしました。
  • EULA ( ユーザーライセンス ) が変更になりました。

くらいですね。文法的にはまったく変更はありません。

また、International Small Basic Curriculum (各国語版 Small Basic カリキュラム)が提供されています。
日本語版も提供されていますが…まあ、教室で使う学習教材のような感じです。自習用としてはちょっと食い足りないかも。

これでだいたい落ち着いた感じでしょうか。

Microsoft Document Explorer 復活

まあ正確にはまったくそのまま復活というわけではありませんけれども。

Visual Studio 2010 Service Pack 1 が2011/03/03 より提供開始されまして。

この中に含まれている Help Viewer という新しい機能が、旧来の Document Explorer 相当の役割となります。

もうブラウザでもどかしい思いしなくてもいいんだ!わーい。

Help Viewer 自体は 猿頁 » Blog Archive » Document Explorerの後継 でご紹介した「Viewer Power Tool (Beta)」の正式版・Ver1.1 です。
従来Power Toool として別扱い、かつベータだったものが、正式版となり、Visual Studio が提供する正式な機能のひとつとなったわけです。

私にとっては、ブラウザヘルプは正直ツリーが使いにくかったのでありがたい追加機能ですね(^^)。

Small Basic 0.95 リリース

2011/02/07 に Small Basic が 0.95 になってました。
まだ公式サイトでも開発者Blogでも何もアナウンスされてませんが。
でも公式サイトのダウンロードモジュールはすでに差し替わっていましたが。

Download details: Microsoft Small Basic 

どんな変更点があるのかは私もまだわかりません。
ちょっと後で調べてみようかと思います。

Excel2010:最大化で起動できない

気がつけば、Excel2010が最大化の状態で起動できなくなっていました。

最大化の状態で終了させてすぐ起動し直してもだめ。
ショートカットのプロパティで「実行時の大きさ」を「最大化」に設定してもだめ。
レジストリの HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Options\Maximized を「3」(最大化)にしてもだめ。

ネット検索で見つけた Microsoft Answers の Excel2010実行時の大きさ=最大化にしておいても最大化しません。 を元にひとつずつ確認していくと、どうやら C:\Users\(ユーザフォルダ)\AppData\Roaming\Microsoft\Excel\XLSTART フォルダにスタートアップマクロが格納されていると起動時に最大化の状態にならなくなるということがわかりました。

全文表示 »

ODAC 11.2.0.2.1リリースされましたー

ぽそぽそと 11.2.0.1.2 の検証をやったりやらなかったりしているうちに、ODAC 11 3回目のリリースが来てしまいました。はやっ。

32-bit Oracle Data Access Components (ODAC) with Oracle Developer Tools for Visual Studio
32-bit Oracle Data Access Components (ODAC) Downloads
64-bit Oracle Data Access Components (ODAC) Downloads

前回の Release 2 からまだ2か月経ってませんよ?
けっこうひどい出来だったからなあ。公式にアナウンスされている「新機能」とは別にけっこうなバグフィックスが入っているんじゃないか、と期待しているんですがいかがなもんなんでしょうか。

備忘録:エミュレータに接続できない

Eclipse から エミュレータで起動 → 実行 / デバッグ実行をかけると、

[2010-12-23 21:00:18 - ddms]Can't bind to local 8609 for debugger

などと表示されてエミュレータが Eclipse に接続されず、ステップトレース等が効かない場合があります。

正常に接続させるには、hosts ファイルのループバックアドレスを IPv6 ( ::1 ) ではなく IPv4 ( 127.0.0.1 ) に書き換えます。

…おおお、ちゃんと通ったよ!これでやっとトレースデバッグができるよ!

元ネタは クロノス・クラウン – [Mobile][Android] Android Tips「ddms Failed to reopenが出た場合の解決方法」  から。
ありがとうございました助かりました。

POBox専用Plug-inを作ってみた

昨日、m猿頁 » Blog Archiv » POBoxのフリック入力から設定画面を呼び出す で「POBox設定」というマッシュルーム ( Android スマートフォンの IME Simeji / POBox Touch から呼び出せる拡張機能 ) を公開してみました。

いや、ほんと単純単機能なアプリで。
フリック入力画面 → [顔文字]キー長押し → 「POBox設定」押し → POBox設定画面表示、ってだけのものです。
POBox の UI だとフリック入力から設定画面を呼び出す手段がなく、毎度毎度 qwerty 入力画面に切り替えなきゃならないのがめんどくさくなって勢いで作ったんですね。

で、なんでマッシュルームかというと、POBox から自作のアプリを組み込める拡張手段がここしかなかったからなんです。

でもマッシュルームってのはもともとフリーの IME 「Simeji」が策定した Simeji 用拡張仕様なので、POBox からも呼び出せますが、当然 Simejiからも呼び出せるわけです。

Simeji から呼び出す POBox 設定画面、ってむっちゃ意味がないではありませんか。

一方、Sony Ericsson から提供されている POBox 専用 Plug-in は、Simeji では認識しないように作られています。
ってことは、マッシュルームとは別に「俺はPOBox 専用 Plug-in だぞー」と名乗る方法があるんではないかと思うわけです。

ので、ちょっと調べてみました。


まず、「俺は Simeji 用マッシュルームだぞー」と名乗る方法について。

Simeji の作者 adamrocker さんの blog で、マッシュルームの仕様とかスケルトンとかががっちり公開されていますので、throw Life – マッシュルーム を読めば作り方は割と簡単にわかります。

Simeji 側に「お、これマッシュルームだ」と認識してもらうには、AndroidManifest.xml に intent-filter を追加して

<intent-filter>
    <action android:name="com.adamrocker.android.simeji.ACTION_INTERCEPT" />
    <category android:name="com.adamrocker.android.simeji.REPLACE" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>

アクティビティ側で

private static final String ACTION_INTERCEPT = "com.adamrocker.android.simeji.ACTION_INTERCEPT";
    …
if (action != null && ACTION_INTERCEPT.equals(action)) {

な感じでインテントをひっかけるというか振り分けるというかな感じで実行させれば OKOK みたいです。

てことは、POBox 専用 Plug-in の場合はこのフィルタ指定が変更になっているのではないかと推測できます。
で、実際に調べてみた結果

<intent-filter>
    <action android:name="com.sonyericsson.android.POBox.ACTION" />
    <category android:name="com.sonyericsson.android.POBox.CATEGORY" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>

ってインテントフィルタになってました。
これに合わせてアクティビティ側も

private static final String ACTION_INTERCEPT = "com.sonyericsson.android.POBox.ACTION";
    …
if (action != null && ACTION_INTERCEPT.equals(action)) {

としてやればいいようですね。


ということで、先ほど「POBox設定」を v1.1 にアップグレードして差し替えました。
Simeji 用マッシュルームから POBox 専用 Plug-in としての提供となります。
まあニッチニーズだとは思いますが、一度試してみていただければ幸いです。

ODAC 11.2.0.1.2 リリースされてましたー

そろそろ今の仕事も収束に向かいつつある昨今、Oracle のデータプロバイダに注目し続ける積極的な理由もなくなってきているわけではありますが。
とりあえず 11.1.0.7.20 でぐだぐだになってしまった クエリビルダがどうなったのかは気になるところ。

Oracle Data Access Components (ODAC) for Windows

検証してみたい気はあるんですが、時間作れるかなあ…。

Small Basic 0.91 リリース

Download details: Microsoft Small Basic

ということで、どうも 2010/11/13 に Small Basic 0.91 がひっそりとリリースされていたようです。
公的なアナウンスがなかった (どっかでありました?) ので、気がつかなかったよー。

とはいうものの、バイナリその他は 0.9 とまったく同一。
ヘブライ語、クロアチア語、ポルトガル語対応としてのリソースファイルの追加、およびインストーラの差し替えのみのようです。

とりあえず、備忘録として。


2010.11.18 追記

公式アナウンス、来ましたよ。

Small Basic V0.91 is more international than ever! – Small Basic – Site Home – MSDN Blogs