2010年06月10日

クエリでの書き込みを禁止するには

Access中級講座で頂いたご質問

Accessではデータはテーブルに保存されますが、このテーブルのデータは、クエリやフォームからでも修正することができます。

システム管理者が作成したAccessのシステムを、Accessの操作に慣れていないユーザーに配布する場合には、誤ってクエリからデータが修正されないように、クエリでの編集を禁止したいケースもあります。

この場合は例えばクエリのプロパティを利用する方法があります。

(手順)〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
1)クエリをデザインビューで開きます。

2)[表示]メニューから[プロパティ]を選択し、プロパティの画面を表示します。

ヒント:プロパティが 「クエリのプロパティ」ではなく「フィールドのプロパティ」になっている場合は、フィールドリストやデザイングリッド以外の部分をクリックすると「クエリのプロパティ」が表示されます。

3)プロパティから「レコードセット」を「スナップショット」に変更します。

ヒント:初期設定ではダイナセットが表示されています。ダイナセットを利用すると、一部の場合を除いてデータの編集が可能ですが、スナップショットはデータの修正ができなくなります。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

設定ができたらクエリを実行して結果を確認します。
レコードを追加するための「*」マークの行が表示されず、データの修正もできなくなります。

AccessはExcelに比べて、体系的な習得には手間がかかる一方、
ちょっとしたデータ編集ならば、Excelと似た操作で出来てしまう
手軽さもあります。

そのため「レコードの保存がどのタイミングで確定するか」を調べないままで修正作業を行ってしまうケースも多いようです。

Excelでは、シート内のデータを変更しても、ブック(ファイル)を保存せずに閉じれば、修正内容は破棄されますが、
Accessでは通常、1レコードずつデータが保存されていきますので、ここがExcelとは大きく異なります。

Accessのデータを、操作に慣れない担当者に配布する場合には、その「データが保存されるタイミング」について、説明した上で配布した方が安全なデータの活用が出来ると思います。

posted by Three bit com at 18:00| Access(アクセス)

2010年06月04日

数値を漢字に変換するNUMBERSTRING関数

Excel(エクセル)で、数値を漢字に変換する NUMBERSTRING 関数があります。

これは、数値(NUMBER)を文字列(STRING)=漢字 に変換する
というような意味でしょうか。

余り利用する機会も多くはないように思いましたので、先日の記事の中でごく簡単にご紹介しましたが
「データを縦書きにして漢数字で印刷する場合に活用したい」
というリクエストを頂きましたので、もう少し詳しくご紹介してみます。

NUMBERSTRING関数の書式は以下のようになります。

(構文)
 NUMBERSTRING(数値, 表示方法)
(表示方法)
 第2引数の「表示方法」は、以下の数値が使えます。

  一、十、百・・・の場合は 1
  壱、壱拾、壱百・・・の場合は 2
  一、一〇、一〇〇・・・の場合は 3

一例をご紹介すると
(例1)
 =NUMBERSTRING(100, 1)
 数値の100を変換して 百 が返ってきます。

(例2)
 =NUMBERSTRING(100, 2)
 数値の100を変換して 壱百 が返ってきます。

(例3)
 =NUMBERSTRING(100, 3)
 数値の100を変換して 一〇〇 が返ってきます。

これもヘルプには見当たらない関数です。
他の人と共同で使うファイルで利用する場合には配慮が必要かと思いますが、便利な関数だと思います。

posted by Three bit com at 10:00| Excel(エクセル)