カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

InputBoxのキャンセル

VisualBasicでInputBoxを使う際、キャンセルされた時は長さ0の文字列を返しますが、何も入力せずOKを押した時も同様に長さ0の文字列が返ってきます。

キャンセルの判定をして、それに伴った処理をしたい場合に困ってしまいます。
そんな時には以下のようにするとキャンセルの判定ができます。

Dim ans As String       'InputBoxの戻り値
Dim boolFlag As Boolean '判定フラグ
boolFlag = False
Do Until boolFlag = True
    ans = InputBox("入力してください")
    If StrPtr(ans) = 0 Then Exit Sub 'キャンセル時に終了
    boolFlag = True
Loop
2,763 views

Access レポートの罫線を指定した行まで表示する

Accessで納品書や各種明細、伝票などのレポートを作成した場合、ページ下部まで空行が表示されるようにしたいことがあります。
今回は経理で使う振替伝票を例にその方法をご紹介します。

まずは作成したいレイアウトをデザインしてください。

Accessの「グループ化と並べ替え」機能を使います。
振替伝票なので伝票番号でグループ化します。
ここでポイントは伝票番号のグループ化を二重にすることです。

二重にしたグループ化の設定を見ていきましょう。
下にあるほうが外側になりますので、上段が内側になります。

内側のグループはヘッダーなし、フッターありで設定します。

下段の外側グループにはヘッダー・フッター共にありで設定します。

上記のように設定するとこのようになります。

内側のグループのフッターがダミーのフッター、外側のフッターが本来のフッターになります。

本体のフッターにはセクションの後で改行するように設定しておきます。

例えば伝票の行数は12行に固定したい。データは6行分しかない。
この場合、詳細セクションを6行分、ダミーフッターを6行分表示してから本来のフッターを表示するという形になります。

続きを読む…»

9,508 views

リモートデスクトップ接続で音声入力できないとき

Windowsのリモートデスクトップ接続でデバイスの共有設定でサウンドに関するデバイスを有効にしているのに
リモート接続される側で見ると「入力デバイスが見つかりません」となるとき。
レジストリエディタで以下のキーの値を変更すれば解消できる場合があります。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp

ここにあるfDisableAudioCaptureの値を1から0に変更

レジストリエディタを開く方法

Win+Rを押し「ファイル名を指定して実行」を開きます。
ファイル名に「regedit」と入力しEnterを押すとレジストリエディタが起動します。

他に検索で探すことも可能です。

33,912 views

メールアドレスをチェックする正規表現パターン

完全なメモ書きです。

^[a-zA-Z0-9]+[a-zA-Z0-9\._-]*@[a-zA-Z0-9_-]+\.[a-zA-Z0-9\._-]+$

少しアップデートしました。こちらのほうが短くて済みます。
\wはアルファベット・数字・アンダースコアを表します。[a-zA-Z_0-9]

^\w+[\w.-]*@[\w-]+\.[\w.-]+$

参考URL:
https://murashun.jp/article/programming/regular-expression.html

2,966 views

Micosoft Office Accessのファイルが壊れる

Windows7のサポートが終了して7ヶ月が経ちました。
皆さんはWindows10への移行はお済みでしょうか?

私も公私共にWindowsを利用しており、Windows10でほぼ問題なく使用出来ているのですが、一つだけ問題があります。
それはOfficeのAccessで作成しているデータベースファイルが壊れるということです。

壊れるといってもそのファイルが使えなくなるわけではありません。
データベースの内容に矛盾が生じ、修復の作業が必要になってしまうわけです。
データベースでは常に最適化する作業が必要になってくるのは当たり前なのですが、最近この状況が頻繁に発生するようになってしまいました。

ちなみにこのようなメッセージが表示されます。

初めは[Accessで発生するメモリー不足エラー]で紹介した事象が起こっていました。
解決したようにも思えましたが、しばらくすると壊れるようになってきました。
そしてその頻度も日を追うごとに頻繁に起こるように…。

それを解消するために色々とやってみました。
続きを読む…»

6,350 views