|
kohji さん ありがとうございます。
>>SELECT *
>>FROM tacifimport
>>ORDER BY tacifimport.kaisyameikana;
>
>SELECT
>A,
>B,
>(SELECT COUNT(*) + 1 FROM tacifimport WHERE tacifimport.A < T1.A )
>AS 連番
>
>FROM
>tacifimport AS T1;
>
>上記のような形で連番が振られると思います
>Aのフィールドは主キーです
※私には、SELECT文 B, の意味を理解できていません。
質問の内容を変えました。
Access2003です。
表形式のフォームに連番を0001〜nnnnまで自動採番をして
表示したいのですが。
「Aテーブル」から、会社名順に抽出する
「Aクエリ」を作り、抽出した結果を表示する
「Aフォーム」を作りました。
この「Aフォーム」(表形式です)の行の一番左には、"連番"という領域が
あります。
この"連番"に1〜自動採番をしたいのですが手法が分かりません。
「Aテーブル」のデザインは、氏名,会社名,住所・・ となっています。
前画面の条件入力画面で「会社名順表示」ボタンクリックした時のイベントは
Private Sub 会社名順表示_Click()
DoCmd.OpenForm "Aクエリ"
End Sub です。
「Aクエリ」の内容は
SELECT *
FROM お客様情報
ORDER BY お客様情報.会社名カナ;
としました。
「Aフォーム」のデザインは
連番(非連結),氏名(連結),会社名(連結),住所(連結)・・
となっています。
訳も分からず下記の事をしてみましたが
Private Sub 会社名順表示_Click()
DoCmd.OpenForm "Aクエリ"
Dim Bango As Variant
Bango = "0000"
連番 = Format(Bango + 1, "0000")
DoCmd.OpenForm "Aクエリ"
End Sub
『実行時エラー'3164'フィールドを更新できません。』と
エラーになり、HELPを参照すると』フィールドを更新できません。
(Error 3164)
原因:
現在、ほかのユーザーによってロックされているレコードまたは
テーブルのフィールドを更新しようとしました。
ほかのユーザーがレコードやテーブルの処理を完了してから、
もう一度実行してください。
MicrosoftR Access で、Locked プロパティが Yes に設定されている
コントロールの値を変更しようとしました。
と解説にありました。
よろしくお願いします。
|
|