直前のレコードの項目値を参照して累計値を求めたい場合は、連動式を設定します。
■ 操作手順 ■
「データベースを共有モード(参照専用)で開いているため、編集内容を反映できません。操作を続けますか?」というメッセージが表示される場合があります。その場合は■ こんなときは ■を参照してください。
- 累計値を求める項目に連動式を設定する
- 五郎を起動し、データベース一覧ウィンドウで、使用したい表が含まれるデータベースを選択して、[開く(O)]をクリックする。
- 表・帳票一覧ウィンドウの[表]シートで、使用したい表を選択して、[定義編集(E)]をクリックする。
実表定義ウィンドウが表示されます。
ここでは、以下のような表を例に解説を進めます。
金額 | 累計 |
20,000 | |
30,000 | |
50,000 | |
10,000 | |
[項目名]金額:[データ型]数値/[詳細]通貨
[項目名]累計:[データ型]数値/[詳細]通貨
- 項目定義領域(画面左部分)で、[累計]の項目をクリックして選択する。
- 詳細定義領域(画面右部分)の[入力補助]シートをクリックする。
- [連動式(D)]欄をクリックして、以下の計算式を入力する。
ArrayValue(Goro.Rowset.Value(-1),"累計")+[金額] |
◆補足◆
<ArrayValue 関数>
書式 | < Value = > ArrayValue ( 配列, 添字 ) |
機能 | 配列の要素値を返します。 |
引数 | 配列 | 配列を指定。 |
| 添字 | 文字列または数値を指定。 |
返り値 | Value | 配列の要素値を返す。 |
説明 | 配列の指定した添字の要素値を返します。 |
<Value プロパティ>
書式 | Rowset.Value ( ) < = Array > |
機能 | カレント行のデータを示します。
値の設定と取得が可能です。 |
引数 | Pos | カレント行を基準とした相対位置を指定。 データ設定時に引数が設定されている場合は無視します。(省略可能) |
値 | Array | カレント行のデータ情報を配列で指定。 |
説明 | Rowsetオブジェクトのプロパティです。 カレント行のデータを列の名前を添字とした配列で設定、取得します。 引数 Pos はカレント行以外のデータを取得したい場合に、カレント行を基準とした相対位置を指定します。 Rowsetオブジェクトのデフォルトプロパティです。 |
◆ [マクロバイザー]を利用して入力する場合 ◆
マクロバイザー機能を使用して、[連動式(D)]に関数、オブジェクトを入力することもできます。
- [連動式(D)]欄の右上にある[エスコート]アイコンをクリックする。
[連動式]ダイアログボックスが開きます。
- [連動式]ダイアログボックス内で、[式(E)]欄の右上にある[マクロバイザー]アイコンをクリックする。
- ArrayValueを呼び出す。
(1)[関数]シートをクリックする。
(2)[関数名(N)]の一覧をスクロールし、 ArrayValue をクリックして選択する。
(3)[式の挿入(O)]をクリックし、[閉じる]をクリックする。
[連動式]ダイアログボックスの[式(E)]欄に、 ArrayValue( 配列, 添字 ) と入力された状態になります。
- Goro.Rowset.Valueを呼び出す。
(1)[連動式]ダイアログボックスの[式(E)]欄に入力された、 ArrayValue( 配列, 添字 )の「( 」の後ろにカーソルをおく。
(2)[連動式]ダイアログボックス内で、[式(E)]欄の右上にある[マクロバイザー]アイコンをクリックする。
(3)[オブジェクト]シートをクリックする。
(4)[階層(T)]欄で以下のようにダブルクリックする。
五郎→Application→Goro→Rowset
(5)[名前(N)]の一覧から Value をクリックして選択する。
(6)[式の挿入(O)]をクリックし、[閉じる]をクリックする。
[連動式]ダイアログボックスの[式(E)]欄に、ArrayValue(Goro.Rowset.Value 配列, 添字 ) と入力された状態になります。
- 「配列」「添字」は削除し、「(-1)」「"累計"」「+[金額]」をそれぞれ手入力する。
- [OK]をクリックする。
※ | マクロバイザーの画面で、使用する関数やオブジェクトを選択して、[マクロヘルプ(M)]をクリックすると、各オブジェクト、関数についてのヘルプを表示することができます。 |
- [連動の再実行コマンドでは連動式を実行しない(N)][追加領域中では連動しない(Q)]をオフにする。
- 入力が完了したら、[ファイル(F)-表定義の終了(X)]を選択する。
- 「表[○○]は変更されています。更新しますか?」のメッセージで、[はい(Y)]をクリックする。
[定義終了後表を開く(O)]をオンにした状態で、[はい(Y)]をクリックすると、定義終了後に自動的に表が開きます。
累計値を計算させる
I.で設定した連動式を計算させるためには、「連動の再実行」を実行する必要があります。
- 表内のレコードを全て選択する。
領域選択ボタン(項目名の左端部分)をクリックして、全てのレコードを選択します。
- [データ(D)-連動の再実行(U)]を選択する。
I.で設定した連動式が再実行され、[累計]の項目に累計値が表示されます。
金額 | 累計 |
20,000 | 20,000 |
30,000 | 50,000 |
50,000 | 100,000 |
10,000 | 110,000 |
◆ 注意 ◆
レコード追加時や、「並べ替え」「絞り込み」コマンドの実行によりレコードの並びが変わった場合には、連動式を再計算させる必要があります。
II.の手順に従い、「連動の再実行」を実行してください。
■ こんなときは ■
● | 「データベースを共有モードで開いているため、編集内容を反映できません。操作を続けますか?」というメッセージが表示された場合 |
< は いを選択>
表定義ウィンドウが開きますが、内容を変更し、定義編集を終了しようとしても「この表定義
ウィンドウは参照専用です。変更した内容はすべて無効になります」のメッセージが表示されます。
確認をクリックすると、編集した内容を破棄し、表定義を終了します。
<いいえを選択>
表一覧ウィンドウに戻ります。
以下の操作を行い、データベースを排他モードで開き直してください。
- 開いているデータベースを閉じる。
- 使用したいデータベースを選択し、[設定変更(P)]をクリックする。
- [接続モード]を[排他(E)]に変更し、[OK]をクリックする。
- 使用したいデータベースを開く。
● | 「データベースを参照専用で開いているため、編集内容を反映できません。操作を続けますか?」というメッセージが表示された場合 |
<は いを選択>
表定義ウィンドウが開きますが、内容を変更し、定義編集を終了しようとしても「この表定義
ウィンドウは参照専用です。変更した内容はすべて無効になります」のメッセージが表示されます。
[確認]をクリックすると、編集した内容を破棄し、表定義を終了します。
<いいえを選択>
表一覧ウィンドウに戻ります。
以下の操作を行い、データベースを編集できる状態で開き直してください。
- 開いているデータベースを閉じる。
- 使用したいデータベースを選択し、[設定変更(P)]をクリックする。
- [データベースを参照専用で開く(R)]をオフにし、[OK]をクリックする。
- 使用したいデータベースを開く。