Access 2010 の AutoKeys マクロの作り方

前回ネタ「Access 2010 でマクロがXML化した?」からの続き
仕事が一段落したところで、再び考えてみた。
Access 2007までの作り方で、Access 2010の変更時に問題なのは「アクションが空」であることです。ということは、何かアクションを指定して何事もなく終了する、という処理が一番良さそうだ。
ということで2010で新規でマクロを作ってみる。
Access 2010 の AutoKeys マクロの作り方
まず、先頭の「マクロ名」に当たる項目には「サブマクロ」を選択する。
Access 2010 の AutoKeys マクロの作り方
そして、名称として今までどおりSendKeys仕様で「ファンクション名」を指定する。
Access 2010 の AutoKeys マクロの作り方
次に「アクション」に当たる項目、ここが今までは空白だった訳だけど、2010では空は許されていないので、とりあえず「イベントの取り消し」(Docmd.CancelEvents)を指定する。
Access 2010 の AutoKeys マクロの作り方
これでファンクションキー1つ分が完成。
Access 2010 の AutoKeys マクロの作り方
あとは必要なファンクションを同じように作る。
単独キーでAccessで必要なのは
「F2」 ・・・ 編集状態のON・OFF
「F4」 ・・・ コンボボックスのリスト表示のON・OFF
の2つのみ。他はすべて運用時には止めるのが無難だろう。
Access 2010 の AutoKeys マクロの作り方
とここでひとつ問題が発生!
「イベントの取り消し」というアクションはキャンセルが有効なイベントの最中に該当キーを押されると、イベントがキャンセルされてしまうことが判明。
他のイベントに影響ないアクションを探した。
そこで見つけたのは「マクロエラーのクリア」というマクロ。マクロ実行中のエラーで蓄積されたエラーコードをクリアするアクション。マクロはAutoKeysのみなのでこれは他に影響を与えない。
他に適当なのは「警告音」(Beep)ぐらいか。押したファンクションキーが無効になった合図にビープ音を鳴らすのも良いかも。
Access 2010 の AutoKeys マクロの作り方
こうして作成したマクロをAccess 2007でデザインモードにすると、上のように見える。2010のXML形式はコメントとして下に残り、中のアクションが抽出されて上に並んでいる。
(「マクロ名」が見えない場合は、「デザイン」タブの「マクロ名」をクリック)
Access 2010で作成したマクロはそのまま動作するし、2007で変更したマクロ(上の今までの形式で変更する)も2010で動作する。
※今日時点の最新のサービスパック、アップデートを適用済み。
Access 2010 の AutoKeys マクロの作り方
しかし、Access 2003では真っ白でマクロは定義されていないものとして、変更すると上書きされてしまって、2010で作ったものがなくなる。2003では互換性がないようだ。
ここまでの結果をまとめると、
■Access 2003で新規作成したAutoKeysマクロ
 ○Access 2007で動作する
 ○Access 2010で動作する
■Access 2007で新規作成したAutoKeysマクロ
 ○Access 2003で動作する
 ○Access 2010で動作する
■Access 2010で新規作成したAutoKeysマクロ
 ×Access 2003で動作しない
 ○Access 2007で動作する
マクロの形式は過度期で、Accessの次バージョンの状況を見るまでは方針を決められないところはあるが、今までの資産からAccess2010以降へ移行するためにも、「アクション」は空にせずに、何か指定しておくと移行がスムーズになるだろう。

World IPv6 Dayに障害はない?

World IPv6 Day は Internet Society(ISOC)が参加を呼びかけている世界規模のトライアルです。
IPv4 アドレス枯渇期を迎えたことを受け、IPv6 によるサービス提供に問題がないことを確かめ、問題があった場合にはそれを共有し、今後の課題解決に役立てることが目的として開催されています。
日本時間の今日9時から明日の9時まで、今開催の真っ最中なのです!
World IPv6 Day
Yahoo!JAPANのホームページでも専用ページを作って、あらかじめ表示に問題がないかどうか確認できるようになっていました。自分のところでは問題はありませんでした。
半分過ぎたところのあるレポートでは、トラフィックが若干増えているものの大きな問題は報告されていないそうです。
World IPv6 Day
と思ったら、ブログに貼り付けてあったGoogleカレンダーはエラーじゃないですか?

PCリサイクルマークを貼る

EIZOのタッチパネルディスプレイを購入して一週間。
PDFのマニュアルに次のようにあった。


個人のお客様
PC リサイクルマークの無償提供について
本製品は、PC リサイクル対象製品です。当社では、本製品をご購入いただいた個人のお客様にPC
リサイクルマークを無償でご提供しております。ご購入後すぐに、次のWeb サイトからお申し込
みください。
マークは本体背面部のラベルの近くに貼付ください。
情報機器リサイクルセンター
Web サイト:http://www.pc-eco.jp
※「PC リサイクルマーク申込」からお入りください。
(回収担当窓口は、情報機器リサイクルセンターにて対応いたします。)
申し込みには、本体の背面部のラベル上に記載されている製品名と製造番号が必要となります。


ということで早速ホームページから申し込んでみたが、EIZO以外にもNECや三菱もPCリサイクルマークは付いていないようだ。
PCリサイクルマーク
ようやく今日シールが届く。
PCリサイクルマーク
「必ず直ちに商品本体背面のモデル名や製造番号が記載されているラベル付近に、貼り付けて下さい。」
とあるんでモデル名の上に貼ってみたよ。

Windows8はWindowsなのか?

Windows8 新UI
タッチパネルでWindowsタッチの練習を始めたばかりなのに、次のWindows8の新UI(ユーザーインターフェース)を見てビックリ!しました。
上の画像が今日公開されたばかりの新UIです。
これがWindowsか!?と疑うばかりですが、それもそのはず、Windows Phone 7に採用されているUIをそのままパソコン用OSに持ってきたのですから。
衝撃的な新UIの動画がYouTubeにアップされています。
Building “Windows 8” – Video #1
http://www.youtube.com/watch?v=p92QfWOw88I
リアルなキーボードを使わず(キーボードまでアプリ)、指で画面をどんどん切り替える、これは大きなモバイル画面と言わずに何なのか?Windowsの所以たる複数のウィンドウが開く画面は過去のものか・・・
と思っていたら、Office(ビデオでは2010)は今のWindows7と変わらない画面になった。今までのUIも残っているようです。ひと安心。
Windows8登場により、ますますタッチパネルディスプレイが当たり前の世になりそうです。(期待も込めて!)

タッチパネルについて勉強してみた

タッチパネルディスプレイを購入したので、この際だからより深く調べてみた。
入力ケーブルによる分類は2種類ある。
USBシリアル転送
RS-232Cシリアル転送
現在はCOMポートが搭載されていない機種も多いので、主流はUSBシリアル転送になっている。
検出方式による分類は4種類ある。
アナログ抵抗膜方式(感圧式)
アナログ容量結合方式(静電容量方式)
超音波表面弾性波(SAW)方式
赤外線光学イメージング方式
以上はほぼ登場した順となっている。
それぞれの検出方式がどういうものなのか?簡単にまとめると、
アナログ抵抗膜方式(感圧式)
 指やペンなどで押した画面の位置を電圧変化の測定によって検知する。
アナログ容量結合方式(静電容量方式)
 画面に指で触れると発生する微弱な電流、つまり静電容量(電荷)の変化をセンサーで感知し、タッチした位置を把握する。
超音波表面弾性波(SAW)方式
 指などで触れた画面の位置を超音波表面弾性波の減衰によって検知する。
赤外線光学イメージング方式
 指などで画面に触れると、赤外光が遮光された影をイメージセンサーがとらえ、三角測量によってタッチした座標を求める。
実際の仕組みについては以下のページが詳しい。
なぜ画面に直接触って操作できるのか?――「タッチパネル」の基礎知識
http://plusd.itmedia.co.jp/pcuser/articles/1009/27/news004.html
それぞれの特徴(長所・短所)をマトリックスでまとめると次のようになる。

  抵抗膜 静電容量 超音波 赤外線
光透過性 ×
指タッチ
手袋タッチ ×
ペンタッチ △専用のみ △専用のみ ○非光沢素材
耐久性 ×
耐水滴 ×
外光影響 ×
マルチタッチ × △投影型 ×
採用例   スマートフォン ATM
キオスク端末
パソコンワイド型モニター

ご覧のように、タッチパネルを採用する場所や周辺環境、使用用途によってベストな検出方式が変わってくる。スマートフォンが「アナログ容量結合方式(静電容量方式)」を採用しているところなどは、ポケットやバッグに入れているときに無用な検知をしないというベストな選択だと言える。
国内で多彩なラインナップを揃えるメーカーは、今はEIZOのみである。それを考慮しても、16:9のワイド型モニターでは「赤外線光学イメージング方式」のものしか存在していない。

タッチパネルを購入してみた

タッチパネルを購入してみた。
タッチパネル EIZO T2351W
購入したのはEIZOの「T2351W」。液晶保護シートも同時に購入した。
タッチパネル EIZO T2351W
汚れ、というより傷が気になるのと、それよりもタッチパネルはガラスを使用しているので蛍光灯が映り込む。パソコンディスプレイはノングレアが好きなのだが、保護シートを貼れば少し光沢を抑えられる。
タッチパネル EIZO T2351W
一般用タッチパネルとしては最も大きな23型であるが、23型の保護シートを左下に合わせて貼ると、
右上がご覧のように5ミリほど開く。ちょっと気になるが、気泡なしに苦労して貼ったのでいまさら貼り直す訳にもいかないので諦める。
タッチパネル EIZO T2351W
このタッチパネルは専用ドライバをインストールする必要があるが、ドライバを入れたあとは、タッチすると水面に落ちた雫のように反応する。これが意外に心地良い。
タッチパネル EIZO T2351W
タッチパネルの性能は満足いくものである。タブレットもスマートフォンも持っていない私には、世間から一足遅れなのであるが、マルチタッチに対応したIE9なのでは、
タッチパネル EIZO T2351W
拡大するのも簡単にできる。ピンチアウトって言うんだっけ?
タッチパネルはこれからのパソコンの可能性を感じさせてくれるものです。何つくろうか?
 

IE9はやはり速いなー

IE9
今日26日の0時からIEの最新バージョンである「IE9日本語版」がついにダウンロード出来るようになりました。
早速ダウンロードしてインストールしてみました。
速い。表示は確かに速いですね。
IE8のときのツールバーもすべて問題なく動作しています。
難を言えば、お気に入りがいままで左側にあったのに、右側に移動して慣れるまでは使いにくい。
いいことばかりかと思っていたら、このブログへの投稿に使用している画像の埋め込み(ポップアップ)がうまくいっていないようです。とりあえず今はFirefox4から記事を書いています。
IE9の特徴は何と言っても「WindowsXPにはインストールできないこと」ですね。ついにマイクロソフトのXP排除作戦が始まりましたよ。

Access 2010 でマクロがXML化した?

Accessで業務アプリを開発する場合、マクロはほぼ使うことはなかったのだが、下のAutoKeysマクロだけは使用していた。
Access2007マクロ
これはAccess2007で見たものだが、Access2003と同じように見える。内容はファンクションキーを押したときのデフォルト動作(F1キーを押すと「Accessヘルプが開く」など)を無効化すること。(マクロ名は指定しているけどアクションが指定されていないので結果的に何も起きない)
ところが・・・
Access2010ではマクロのデザインビューが一新された。デザインビューだけかと思っていたら、下のように作成したマクロ(F1キーを押したときにアクション定義なし)は、
Access2010マクロ
Access2007で見ると下のように見える。コメント??しかもXML??
Access2010マクロ
結局、マクロの保存形式が全く変わって下位互換がなくなってしまった。
・Access2010で旧形式(2007以前)のAutoKeysマクロをインポートする
・Access2010でAutoKeysマクロを新規作成する
いずれの方法でも今までどおりの設定ではAutoKeysマクロは意図した動作をしてくれない。
とりあえずの回避策は、
Access2007でAutoKeysマクロをインポートし、Access2010で動作させること
この場合、マクロを変更しなければ意図通りの動作をしてくれる。
Access2010のみで如何に今までどおりのAutoKeysマクロを実現するかは思案中・・・
この記事の続き
Access 2010 の AutoKeys マクロの作り方

エラー「UNCパスはサポートされません」を回避する方法

ネットワーク上の共有ドライブにバッチファイルでファイルコピーをすると、「UNCパスはサポートされません」というエラーが出て失敗することがある。
理由はアクセスが認証されないからであろうが、自動処理を目的としているバッチファイルが失敗しては意味がない。
ということで回避方法を考える。
元のバッチファイルはこんな感じ。
test.bat

Windows7をインストールしてみたが、音が出ていない・・・

最近5年近く使ってきたWindowsXPノートの一部のキートップが外れやすくなってきたので、以前Vista用に購入したデスクトップにWindows7をインストールした。
インストール自体は問題なかったが、そういえば音がなっていないことに気が付いた。
サウンドのデバイスを見てみると、「デジタル オーディオ(S/PDIF)」のみしか表示されていない。デバイスマネージャーには不明なデバイスはないので、どうもオーディオドライバのみインストールされなかったようだ。
筐体はASUSのベアボーン「V3-P5V900」。仕様ではVistaまでしかサポートしていない。当然ドライバもVistaまでしか用意されていないが、Windows7でもほとんどのドライバは使えるはずなので、Vista用をダウンロードしてインストールしてみる。失敗したら復元すればいいし・・・
バージョン 6.10.01.6050
ADI_Audio_Vista_V610016050.rar
ADI Audio Driver V6.10.01.6050 for Windows 32bit Vista.(WHQL),V6.10.02.6050 for Windows 64bit Vista.(WHQL)
http://support.asus.com.tw/download/download.aspx?model=V3-P5V900&Type=BIOS
ベータ版もあったが、ここは安定版をインストール。
サウンドに「スピーカー SoundMAX Integrated Degital HD Audio」が出現。うまくインストールされたようだ。音も聞こえるようになった。