Microsoft Accessでレポートレコードに番号を付ける方法

Microsoft Accessでレポートレコードに番号を付ける方法

レポート内のレコードに番号を付けるだけで、読みやすくなります。これは、読者が現在のレコードを前のレコードや次のレコードと区別するのに役立つ、馴染みのある要素です。さらに、番号には学生数、製品数、注文数など、意味があるため、分析にも役立ちます。結果を並べ替えて上位10件のリストを表示することも可能です。幸いなことに、Accessレポートではレコードに番号を付けるのはとても簡単です。

この記事では、Accessレポートでレコードに番号を付ける方法を学びます。既存のレポートを使用して手順を簡素化しますが、その過程で問題が明らかになることがあります。しかし、ご安心ください。解決策は簡単ですが、既存のAccessオブジェクトを操作する際に起こり得る問題です。

シンプルな Access レポートでレコードに番号を付ける

Access 365 に付属する Northwind レガシーデータベースを使用しています(図 A)。この手順を実行する場合は、「コンテンツの有効化」プロンプトに必ず応答して、データベースを変更できるようにしてください。また、データベースにログインするように求められます。

Northwind を開いて、従ってください。
図A:Northwindを開いて、手順に沿って進めてください。画像:Susan Harkins/TechRepublic

私たちの目的においては、どの従業員を選択しても違いはありません。

アカデミー: Microsoft Office Pro Plus 2019 のアプリケーションを購入して、その使い方を学びます。

図Bに示す既存の月次売上レポートに番号線を追加します。ただし、ほぼすべてのレポートを使用して、この手順を実行できます。

このレポートに記録番号を追加します。
図B:このレポートに記録的な数字を追加します。画像:Susan Harkins/TechRepublic

レポートへのアクセス方法

Northwind によってメイン フォームが開きます。メイン フォームは開いたままにすることも、閉じることもできます。

まず、次のように月次売上レポートにアクセスしてみましょう。

  1. ナビゲーションペインで、上部の「Northwind」ドロップダウンをクリックし、「オブジェクトの種類」を選択します(図C)。これにより、データベース内のすべてのレポートに簡単にアクセスできるようになります。
ナビゲーション ウィンドウを再配置します。
図C: ナビゲーションウィンドウを再配置する。画像: Susan Harkins/TechRepublic
  1. 「レポート」セクションを展開し、「月次売上レポート」を見つけます。右クリックしてデザインビューで開きます(図D)。
レポートをデザイン ビューで開きます。
図D:レポートをデザインビューで開く。画像:Susan Harkins/TechRepublic

新しいコントロールを追加する方法

レポートをデザインビューで開いたら、詳細セクションに新しいコントロールを追加する準備がほぼ整いました。その前に、既存のコントロールを右に移動してスペースを確保する必要があります。ご自身のレポートで作業していて、この手順が不要な場合は、次のセクションに進んでください。

サンプルレポートに従う場合は、次の手順を実行します。

  1. フォーム内のすべてのコントロールを選択するには、Ctrl + A を押します。
  2. 「配置」タブをクリックします。
  3. 「表」グループで、「レイアウトの削除」をクリックします(図E)。この手順は必ずしも必要ではありませんが、この設定が有効になっている場合は、無効にするまでコントロールを移動できません。
レイアウトの削除設定を無効にします。
図E: レイアウトの削除設定を無効にする。画像: Susan Harkins/TechRepublic
  1. フォームの背景の任意の場所をクリックすると、すべてのコントロールの選択が解除されます。
  2. Shiftキーを押しながら、「月ヘッダー」セクションの「商品」コントロールと「売上」コントロールをクリックします。次に、「詳細」セクションの「売上グループフィールド」コントロールと「売上合計」コントロールをクリックします。
  3. 2 つのコントロールを右にドラッグして、新しい番号付けコントロールのためのスペースを確保します (図 F )。
コントロールを右に移動して、新しい番号付けコントロールのためのスペースを確保します。
図F:コントロールを右に移動して、新しい番号付けコントロールのためのスペースを確保します。画像:Susan Harkins/TechRepublic

コントロール用のスペースを確保したら、コントロールを追加するのは簡単です。

  1. 必要に応じて、[レポート デザイン] タブをクリックします。
  2. コントロール セクションでテキスト ボックスをクリックします。
  3. レポートの詳細セクション内、先ほど移動した4つのコントロールの左側をクリックして、テキストボックスコントロールを配置します(図G)。今のところ、テキストボックスコントロールは既存のコントロールの上に配置されているため、見分けがつきにくいです。
レポートの詳細セクションにテキスト ボックス コントロールを挿入します。
図G: レポートの詳細セクションにテキストボックスコントロールを挿入します。画像: Susan Harkins/TechRepublic
  1. テキストボックスを選択し、「=1」という式を入力します(図H)。この式はコントロールの「コントロールソース」プロパティになります。
この簡単な式を入力します。
図H:この簡単な式を入力します。画像:Susan Harkins/TechRepublic
  1. テキスト ボックス コントロールを選択したまま、右端をつかんで左にドラッグし、幅を狭めて既存のコントロールが表示されるようにします。
  2. 次に、テキストボックスコントロールのラベルがテキストボックスコントロールの後ろに隠れてほとんど見えなくなります。これを個別に選択し、Deleteキーを押します(図I)。
ラベルをはがします。
図1:ラベルを剥がす。画像:Susan Harkins/TechRepublic

累計を計算する方法

この時点でコントロールは配置され、レポートビューに表示されますが、連続した番号のリストは返されません。現状では、各レコードに対して1という数字が返されます。幸いなことに、これは簡単に修正できます。

  1. デザインビューでテキストボックスコントロールが選択されたまま、プロパティシートの「データ」タブをクリックします。プロパティシートが表示されていない場合は、テキストボックスコントロールをダブルクリックして開きます。
  2. 設定のドロップダウンから、「実行合計」プロパティを「全体」に変更します (図 J )。
実行合計プロパティを全体に変更します。
図J: 累計プロパティを全体合計に変更します。画像: Susan Harkins/TechRepublic

いよいよレポートを表示する準備が整いました。「表示」グループの「表示」ドロップダウンから「レポート表示」を選択してください。レポートのタブを右クリックして「レポート表示」を選択することもできます。図Kに結果を示しますが、少し驚くことに、数字の7が表示されていません。

番号付きリストに番号がありません。
図K:番号付きリストに番号が抜けている。画像:Susan Harkins/TechRepublic

トラブルシューティング

ご自身のデータやレポートを扱う際に、このようなエラーに遭遇する可能性は低いですが、だからこそこのレポートを選びました。これまで説明していない多くの問題が起こっており、それが番号付けコントロールが期待どおりに動作しない原因となっています。

参照: Access が適しているかどうかわからない場合は、これらのトップ データベース DevOps ツールをチェックしてください。

簡単に解決するには、累計設定を「全体」から「グループ全体」に変更します。確かに、まだ意味が分かりませんが、一応は機能します。

少し調べてみると、「SalesGroupField」フィールドと「Total Sales」フィールドに値を設定するレポートを開くイベントプロシージャが見つかります(図L)。技術的な説明を省くと、このレポートはグループ化されたレポートですが、デザインビューでレポートを表示しただけではそのことは分かりません。

イベント プロシージャによってレポートがグループ化されます。
図L:イベントプロシージャはレポートをグループ化します。画像:Susan Harkins/TechRepublic

既存のレポートを変更する際、レポートが期待どおりに動作しないという状況に陥りやすいです。そのような場合は、VBAのイベントプロシージャまたはマクロを探してください。

オートナンバーについて

オートナンバーフィールドを追加した方が簡単ではないかと思われるかもしれません。オートナンバーフィールドは一意性を保証するものであり、適切な順序を保証するものではありません。このツールは適切な用途には適しておらず、意図しない結果を招く可能性があります。

  • 基になるクエリまたはレポートがレコードをフィルター処理する方法に依存する場合、自動採番値によってレポートのレコードが正しく連続して番号付けされるという保証はありません。
  • テーブルからレコードが削除されると、自動番号も削除され、レポート内の後続の番号付けスキームから番号が失われることになります。

この記事の手順に従うことで、Access レポートに効果的に連番を追加し、読者にとっての明瞭性と使いやすさを向上させることができます。

Tagged: