目次
ACCESSチョットした不便をVBAで解決
こんにちは。伊川(@naonaoke)です。
今回もACCESSのことを紹介します。
初めてACCESSを操作した頃は、ACCESSでは、Excelと違って不便と思うところが結構ありました。
しかし、それがACCESSと思って、決して、Excelには、浮気をするものがと思って操作していました。
しかし、最近になって、不便なものは不便であり、便利になる方法はないかと模索しています。
そんな、技の1つです。
このブログはこんな人にお勧め
- ACCESSとExcelを比べてしまう人
- ACCESSを勉強中の人
- ACCESSを勉強しているが、挫折しそうな人
このブログを、読み終わるころには・・・・
ACCESSは、小技を使うことで、さらに便利になるということが、実感できます。ACCESS初心者の頃は、Excelと違って、堅苦しく感じます。しかし、Microsftが、そんな不便なものを販売するわけがないのです。
以前に紹介した、郵便番号を入力後、住所の最後にカーソルを合わせるというような技を、覚えると、
ACCESSが更に便利に感んじるでしょう。
ACCESS あるあるの不便
ExcelもACCESSもそうなのですが、長い文章をセル、または、フィールドに入力したときに、文章を読むことに苦労すると思います。
このようなとき、Excelであれば、そのままセルを伸ばすと、長い文章を確認できます。
しかし、ACCESSはそうはいきません。
デザインビューや、レイアウトビューに切り替えてフィールドの幅を調節しなければなりません。
これがまた、面倒!
せっかく作成したのに、
ACCESSってイマイチだなと思う人も少なくないと思います。
この長い文章を入力したときの改善方法を紹介します。
長い文章をフィールドに入力 作業手順 その1 データベース確認
例えば、苗字と名前のフィールドがあります。
名前が、寿限無 寿限無・・・・・・・・・・・・・
全部は、ブログに記載しませんが、とても長い名前としましょう。
その時に、名前は、フィールドに一度に表示されません。
ちなみに、日本では、名前の文字数に制限はありませんが、親なら、常識的な名前をつけいるのではないでしょうか?
では、このような表示にしますと、格好悪いですよね。
ちなみに、このような仕事をしてはいけません。
仕事は、やれば良いというものではありません。
長い文章をフィールドに入力 作業手順 その2 VBAで解決
レイアウトビューから、名前のフィールドが全部、選択された状態にします。
上記のコードを記載します。
これで完成です。
ZoomBoxなんて知らなかったし、こんな便利なことができると改めて、知りました。
長い文章をフィールドに入力 作業手順 その3 コードの一部を解説
Cancel = Trueが必要なのでしょうか?
この処理を入れないと、ZoomBoxを閉じたときに、フィールド内の文字が全選択されるという事態を防ぐためです。
間違って、削除する可能性があるので、このような処理を加えています。
しかし、別の方法で、レコードをロックすることができます。
レコードセットをスナップショットに変更することで、フォームからのレコード変更はできなくなります。
両者を比較すると、Cancel = Trueのほうが便利かもしれませんが、その時のケースバイケースで考えた方がいいと思います。
ここがポイント
ZoomBoxというコードがあることすら知りませんでした。今回、自分でも勉強になったのは、ACCESSは不便だなと思っていても、
本当に知らないだけで、もっと便利な技があるのではないかと思いました。
もっと勉強すると、さらにACCESSは便利になるかもしれません。
まとめ
使いこなせるようになったと思っても、ACCESS関して、知らないことばかりという思いです。
もっと勉強が必要だなと痛感した日でした。
今回も最後まで読んでいただきありがとうございました。
今回のサンプルファイルは、No195 です。
わからない事を延々と考えるのは、無駄です。
- なんで作動かないの?
- もうやだ!VBAなんか嫌い!
- ネットで調べても情報がない!
必ず作動するコードが、ここにあります。