ママのスキンケアのお悩みにおすすめアイテム

環境:XP&ACCESS2003
帳票形式のフォームを作成しています。
受注レコード1に対して受注明細レコード多です。
例えば、レポートの様に「並べ替え/グループ化」で
受注NOをグループ化し、受注NOの下に同じ受注NOを持つ受注明細を表示させ、これを、受注NO毎に繰り返すフォームを作成しようとしています。
フォーム/サブフォーム形式で行おうとすると、フォーム/サブフォーム形式は単票フォームでしか適用できない旨、ACCESSからメッセージが出て作成できません。
どの様に作成すればいいか、教えていただけると幸いです。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

>受注NOの下に同じ受注NOを持つ受注明細を表示させこれを受注NO毎に繰り返すフォームを作成しようとしています



受注レコードをメインフォームで単票フォーム、受注明細をサブフォームで帳票フォームでやれば問題ないと思いますが。

>フォーム/サブフォーム形式で行おうとすると、フォーム/サブフォーム形式は単票フォームでしか適用できない旨、ACCESSからメッセージが出て作成できません
どの様に作成しているのでしょうか?

>どの様に作成すればいいか
受注レコードと受注明細をリレーションシップで1対多のリレーションで結合してあればフォームウィザードを使えば簡単です。
フォームウィザードの選択画面のテーブルで受注レコードの必要なフィールドを選び一緒に受注明細からも必要なフィールドを選択し進めサブレポートのあるフォームのまま進めサブフォームのレイアウトを表形式かデータシートを選べば出来ます。
    • good
    • 0

2003ならデータシートビューのサブデータシートが一番御希望に近いのでは

    • good
    • 0

基本的には「不可能」と思います。


グループヘッダーと同明細という考えは、帳票フォームに馴染まないからです。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QAccess2002:帳票形式のフォーム内に明細を表示させたい

下記の様なテーブルがあります。

テーブル名:T_明細
+----------------------------------------------+
ID   受注番号   名称   数量   発注先
+----------------------------------------------+
1   1      りんご   1   A商店
2   1      ぶどう   3   A商店
3   2      みかん   2   A商店
3   2      キウイ   2   A商店
4   2      桃     1   Bショップ
5   3      メロン   3   A商店
6   3      バナナ   2   Cストア
+----------------------------------------------+

このテーブルの情報を下記の様なフォームを作成し
表示しようとしています。


フォーム名:F_発注処理(受注番号単位で開かれます)※帳票形式にて表示

■受注番号1 で開いた場合
-------------------------------
A商店      発注明細
      りんご   1
      ぶどう   3
-------------------------------

■受注番号2 で開いた場合
-------------------------------
A商店      発注明細
        みかん   2
        キウイ   2
-------------------------------
Bショップ   発注明細
      桃   1
-------------------------------

■受注番号3 で開いた場合
-------------------------------
A商店      発注明細
      メロン   3
-------------------------------
Cストア      発注明細
      バナナ   2
-------------------------------


Accessの仕様で、帳票形式のフォーム内にサブフォームを設置できないのは、知っています。
また、別の方法で「発注明細」部分をリストボックスにし
親レコード毎に、Rowsourceの値を変更するような仕組みにしてみましたが
これも上手くいきませんでした。(元々こういう使い方は出来ないのでしょうか・・・)
参考:Form Loadイベントに
   Me.明細.RowSource = "SELECT 名称,数量 FROM T_明細 WHERE 受注番号 = " & Me.受注番号 & " and .発注先 = '" & Me.発注先 & "';"



要は、
1.受注番号毎に、F_発注処理フォームは開かれる
2.発注先毎に帳票表示し、各発注先毎に明細を表示

という条件を満たしたいのですが、良い方法が思いつきません。
どなたかご助言頂けませんでしょうか。宜しく御願い致します。

下記の様なテーブルがあります。

テーブル名:T_明細
+----------------------------------------------+
ID   受注番号   名称   数量   発注先
+----------------------------------------------+
1   1      りんご   1   A商店
2   1      ぶどう   3   A商店
3   2      みかん   2   A商店
3   2      キウイ   2   A商店
4   2      桃     1   Bショップ
5   3      メロン   3   ...続きを読む

Aベストアンサー

サブデータシートなら可能です。

サブデータシートについて
http://office.microsoft.com/ja-jp/access/HP052362161041.aspx
【データシート形式】でサブデータシートを表示させたいのですが。。。
http://www.accessclub.jp/bbs3/0003/superbeg1261.html

QACCESS サブ・メインフォームのリンク方法を教えてください。

ACCESS2000で、サブ・メインフォームともクエリからのデーターになります。フォーム上にサブフォームは作成できたのですが、リンクしてません。参考書には、リンク子・親フィールドに結びつける項目名を入力と書いているのですが、プロパティをひらいても、子・親フィールドの項目がありません。

素人が参考書片手に、作成しているもので、専門用語が、いまひとつよくわかりません。お手数ですが、よろしくお願いします。

Aベストアンサー

1)メインフォームをデザインビューで開く
2)プロパティシートを開き、「データ」タブをクリック
(プロパティシートは、メニューの「表示(V)」→「プロパティ(P)」か、コントロールなどの右クリックメニューから開けます)
3)サブフォームをクリック
(このとき、間違ってサブフォーム内のコントロールにフォーカスを当てないように、サブフォームの輪郭をクリック)
4)「リンク子フィールド」にサブフォームのフィールドを、「リンク親フィールド」にメインフォームのフィールドかコントロールを、それぞれ指定
(双方を複数指定する場合は、「リンク子/親フィールド」のどちらかにカーソルを合わせたときに右端に表示される「・・・」(ビルダ)ボタンをクリックして、指定)

サブフォーム内のテキストボックスなど、サブフォーム自体以外にフォーカスがあると、「リンク子フィールド」等は表示されませんので、ご注意を。

QAccessで別テーブルの値をフォームに表示したい

初めてのAccessで分からない事があり質問させてください。

<会社テーブル>
会社ID
会社名
住所

<社員テーブル>
会社ID
社員名
ソート番号

*1社に対し複数の社員レコードが存在

以上のようなテーブルがあるとします

現在「会社テーブル」を表形式で一覧表示しています
会社ID,会社名、住所とフィールドが並んでいるのですが、その後ろに「社員テーブル」のソート番号が一番若い社員名を表示したいと考えています(現状は番号関係なく表示させる方法すら分かりません)

色々いじくりまわしたのですが、初めてAccessをさわる事もあってよくわかりません

リレーション等でひっぱってくる事ができるのでしょうか?

どなたか教えて頂けませんでしょうか

何卒よろしくお願い致します

PS.Access2013で作成中です

Aベストアンサー

単純にテーブル[会社]のみでフォームを作成し、社員表示用テキストボックスを追加。そして、そのプロパティを表示し

コントロールソース=DBLookup("SELECT 社員名 FROM 社員 WHERE 会社ID=" & [会社ID] & " ORDER BY ソート番号")

これは、以下の標準モジュールに登録したユーザ関数 DBLookup()を使っています。これで、クエリを用意しなくても目的を達成できます。

さて、かかるユーザ関数を標準ライブラリに登録したくない場合、

1、"社員ソートクエリ"を作成します。

SELECT 社員.会社ID, 社員.社員名
FROM 社員
ORDER BY 社員.ソート番号;

2、コントロールソースに次のように書きます。

=DLookUp("社員名","社員ソートクエリ","会社ID=" & [会社ID])

http://office.microsoft.com/ja-jp/access-help/HA001228825.aspx

DLookup()については、マイクロソフトの解説を参照されてください。

【DLookup()の限界を破るにはVBAで同じ関数を作るしかない】

マイクロソフトの解説を読めば判りますが、ORDER BY 節を指定する引数が用意されていません。ですから、どうしても、"社員ソートクエリ"を作成するという手間が必要となります。そこで、SQL文を引数とするDBLookup()をVBAで書けば、その手間を省けるという算段になります。この辺りは、好みと趣味の問題。どっちでも良いと思います。そういうお断りをした上で DBLookup()を紹介しておきます。なお、ADOは、つぎのように参照設定しないと利用できません。

http://www.happy2-island.com/access/gogo03/capter00307.shtml

Public Function DBLookup(ByVal strQuerySQL As String, _
             Optional ByVal ReturnValue = Null) As Variant
On Error GoTo Err_DBLookup
  Dim DataValue
  Dim rst     As ADODB.Recordset

  Set rst = New ADODB.Recordset
  With rst
    .Open strQuerySQL, _
       CurrentProject.Connection, _
       adOpenStatic, _
       adLockReadOnly
    If Not .BOF Then
      .MoveFirst
      DataValue = .Fields(0)
    End If
  End With
Exit_DBLookup:
On Error Resume Next
  rst.Close
  Set rst = Nothing
  DBLookup = IIf(Len(DataValue & ""), DataValue, ReturnValue)
  Exit Function
Err_DBLookup:
  MsgBox "SELECT 文の実行時にエラーが発生しました。(DBLookup)" & Chr$(13) & Chr$(13) & _
      "・Err.Description=" & Err.Description & Chr$(13) & _
      "・SQL Text=" & strQuerySQL, _
      vbExclamation, " 関数エラーメッセージ"
  Resume Exit_DBLookup
End Function

単純にテーブル[会社]のみでフォームを作成し、社員表示用テキストボックスを追加。そして、そのプロパティを表示し

コントロールソース=DBLookup("SELECT 社員名 FROM 社員 WHERE 会社ID=" & [会社ID] & " ORDER BY ソート番号")

これは、以下の標準モジュールに登録したユーザ関数 DBLookup()を使っています。これで、クエリを用意しなくても目的を達成できます。

さて、かかるユーザ関数を標準ライブラリに登録したくない場合、

1、"社員ソートクエリ"を作成します。

SELECT 社員.会社ID, 社員.社員名
FR...続きを読む

QAccessのRefresh・Requery・Repaintの違い

Requeryはもう一度ソースレコード(テーブル)を読み込むようです。このとき、テーブルの先頭レコードに移動してしまいます。
Refreshは最新のレコード(テーブル)を再表示するような気がします。レコードの移動は起こらない気がします。
Repaintは、VBAでキャプションなどを変更したとき使っています。
でも、よくわかっていません。
どんなときにどんなメソッドを使えばいいのでしょうか?
詳しい方、よろしくお願いいたします。

Aベストアンサー

たびたびすみません。
調べてたらこんなのがでてきました。
http://www.nurs.or.jp/~ppoy/access/access/acF007.html

参考URL:http://www.nurs.or.jp/~ppoy/access/access/acF007.html

QACCESSに同時アクセス(編集)をしたい

教えてください。
ACCESSのDBに複数のユーザが同時にアクセスして、
データを追加・編集したいのですが、
やはり、不可能でしょうか?

Aベストアンサー

マイクロソフトのアクセスに同時に複数のユーザが同時にアクセスして
データベースを操作することは可能です。いくつかの方法がありますが、
昔私が簡便に行なっていた方法は「テーブルのリンク」です。

あるコンピュータにアクセスでdb1という名前のデータベースを作って
ここにデータを格納しておきます。

他方で別のコンピュータに、アクセスでdb2という名前のデータベースを作ります。

このdb2というデータベースのメニューで

「ファイル」->「外部データの取り込み」->「テーブルのリンク」

というのがありますから、最初に作ったdb1をたどり、リンクしたいテーブルを
選択します。

こうすることにより、db2にdb1のテーブルがリンクされ(リンクテーブルと
呼ばれます。アイコンが通常のテーブルと違います。)、db1に格納された
データをdb2で編集することができます。

db2で、db1からのリンクテーブルを元にクエリーを作成することもできます。
リンクテーブルに対してできないことはテーブル構造の変更くらいで
他のことはだいたいできると思っていいかと思います。

このような形をとれば、ローカルエリアネットワーク内の複数のコンピュータ
から同時に同じアクセスデータベースにアクセスすることは可能かと思います。

このやり方にはおそらく問題もあるだろうと思うのですが、昔私がやって
いた頃は、特段支障もなく業務を行なうことができました。問題は、これを
読んだ他の誰かが指摘してくださるかと思います。

同じレコードに複数ユーザが同じタイミングでアクセスするとややこしい
ことになります。これを回避するためには、db2にワークテーブルを備えておき、
リンクテーブルからレコードを一度db2に格納し、編集を終了したのちに
リンクテーブルのレコードを削除し、ワークテーブルで編集したレコードを
リンクテーブルに追加する、などのルーティンをマクロやVBAで構築するのが
よいかと思います。私はそのようにしていました。

他に、ADOを使う方法などもあります。方法はいくつかありますから、
少し研究してみるといいですよ。(^-^)

マイクロソフトのアクセスに同時に複数のユーザが同時にアクセスして
データベースを操作することは可能です。いくつかの方法がありますが、
昔私が簡便に行なっていた方法は「テーブルのリンク」です。

あるコンピュータにアクセスでdb1という名前のデータベースを作って
ここにデータを格納しておきます。

他方で別のコンピュータに、アクセスでdb2という名前のデータベースを作ります。

このdb2というデータベースのメニューで

「ファイル」->「外部データの取り込み」->「テーブルのリンク」
...続きを読む

QAccessのフォーム上にレコード数とレコード番号の表示

Accessでクエリを元に表示するフォーム上で、テキストボックス等に関数を使って、レコード数とレコード番号を表示する方法がありましたら教えてください。

フォームの書式設定で「移動ボタン」の表示をすれば目的の事は出来るのですが、表示の大きさが調整できない為、とても見難いのです。

以上よろしくお願いします。

Aベストアンサー

レコード番号のコントロールソースを
=[CurrentRecord]
レコード数のコントロールソースを
=Count("*")-[NewRecord]
としてみてください。

Qaccess 1対1と1対多のテーブルをクエリで集計したい…

受注管理のデータベースを作っています。
売り上げを計算するクエリを作ったのですがどうもうまくいかないので質問します。

集計したいテーブルですが

受注マスタテーブル
注文番号(主キー テキスト型)
注文日(日付型)
氏名



受注明細マスタテーブル
注文番号 (重複あり)受注マスタの注文番号と1対多のリレーションシップ
商品名
品番
販売単価
購入個数

経費・返品金額テーブル
注文番号(主キー)受注マスタの注文番号と1対1のリレーションシップ
経費
返品金額


これを、販売単価×購入個数-経費+返品金額というようにして1ヵ月ごとに集計しようとして、下のようなクエリを作ったのですが経費が何回も計算されてうまくいきませんでした…
よろしくお願いします。

SELECT Format(注文者マスタ!注文日,"yyyy/mm") AS 月, Sum([受注明細マスタ]![販売単価]*[受注明細マスタ]![購入数量]-[経費・返品金額テーブル]![経費]+[経費・返品金額テーブル]![返品金額]) AS 売上
FROM (注文者マスタ RIGHT JOIN 経費・返品金額テーブル ON 注文者マスタ.注文番号 = 経費・返品金額テーブル.注文番号) LEFT JOIN 受注明細マスタ ON 注文者マスタ.注文番号 = 受注明細マスタ.注文番号
GROUP BY Format(注文者マスタ!注文日,"yyyy/mm");

受注管理のデータベースを作っています。
売り上げを計算するクエリを作ったのですがどうもうまくいかないので質問します。

集計したいテーブルですが

受注マスタテーブル
注文番号(主キー テキスト型)
注文日(日付型)
氏名



受注明細マスタテーブル
注文番号 (重複あり)受注マスタの注文番号と1対多のリレーションシップ
商品名
品番
販売単価
購入個数

経費・返品金額テーブル
注文番号(主キー)受注マスタの注文番号と1対1のリレーションシップ
経費
返品金額


...続きを読む

Aベストアンサー

受注明細が注文番号だけでは1件に絞られず複数件抽出されるので
これと結合している時点で受注、経費のテーブルからは
同じレコードを何回も使って結合を行ってしまいます。

1:1:1になるように、先に受注明細だけ集計を取っておいて
サブクエリとするのが適切かと。

SELECT Format([注文者マスタ].[注文日],"yyyy/mm") AS 月, Sum(A.[購入金額] - [経費・返品金額テーブル].[経費] + [経費・返品金額テーブル].[返品金額]) AS 売上
FROM (注文者マスタ LEFT JOIN 経費・返品金額テーブル ON 注文者マスタ.注文番号 = 経費・返品金額テーブル.注文番号) LEFT JOIN
(SELECT 注文番号, Sum(販売単価 * 購入数量) AS 購入金額 FROM 受注明細マスタ GROUP BY 注文番号) A
ON 注文者マスタ.注文番号 = A.注文番号
GROUP BY Format(注文者マスタ.注文日,"yyyy/mm");

↑こんな感じでお望みの結果が得られませんでしょうか。

(SELECT 注文番号, Sum(販売単価 * 購入数量) AS 購入金額 FROM 受注明細マスタ GROUP BY 注文番号) A

SQLが煩雑になるのを避けたいならば、この部分だけをあらかじめ一つのクエリとして作っておいて
そのクエリと結合する形でもできますよ。

受注明細が注文番号だけでは1件に絞られず複数件抽出されるので
これと結合している時点で受注、経費のテーブルからは
同じレコードを何回も使って結合を行ってしまいます。

1:1:1になるように、先に受注明細だけ集計を取っておいて
サブクエリとするのが適切かと。

SELECT Format([注文者マスタ].[注文日],"yyyy/mm") AS 月, Sum(A.[購入金額] - [経費・返品金額テーブル].[経費] + [経費・返品金額テーブル].[返品金額]) AS 売上
FROM (注文者マスタ LEFT JOIN 経費・返品金額テーブル ON 注文者...続きを読む

QACCESSでフォームを使って、テーブルを参照、データ入力、データ更新をしたいのです

フォームを使って、テーブルを参照、データ入力、データ更新をしたいのです。

売上テーブル

 ID   商品コード  日付    金額 
 1    G1     20080101  532153
 2    G1     20080101  564281
 3    G1     20080301  538123
 4    J4     20080301  124531
 5    J4     20080302  125483

ID:オートナンバー 商品コード:数値型 日付:数値型 金額:数値型

これを使い、
フォームではまず

レコードナンバーを入力画面
       ↓
レコード番号を入れると、そのレコードのデーターが画面に表示され、
その画面で修正可能
       ↓
 保存 ボタンで保存

という流れです。

レコードナンバーはIDを使おうと思っています。

データの量が莫大な為、コンポボックスなどは使えません。

できるだけ、VBAなどは使わずに作りたいです。

よろしくお願い致します。

フォームを使って、テーブルを参照、データ入力、データ更新をしたいのです。

売上テーブル

 ID   商品コード  日付    金額 
 1    G1     20080101  532153
 2    G1     20080101  564281
 3    G1     20080301  538123
 4    J4     20080301  124531
 5    J4     20080302  125483

ID:オートナンバー 商品コード:数値型 日付:数値型 金額:数値型

これを使い、
フォームではまず

レコードナンバーを入...続きを読む

Aベストアンサー

まずそのテーブルを基にしてフォームを作成します。
そのフォームのヘッダー部分にテキストボックスを配置後、一旦
上書き保存。
フォームのレコードソースを
SELECT *
FROM テーブル名 WHERE ID=[Forms]![フォーム名]![テキストボックス名]
とします。
次にテキストボックスの更新後処理に
Me.Requery
とすれば完成です。
フォームを開いてテキストボックスにID入力後エンターしてください。

保存に関しては、コマンドボタン作成後クリック時イベントに
DoCmd.RunCommand acCmdSaveRecord
とすれば良いでしょう。

この手のモノは検索すれば相当数ヒットするので、そちらを参考にされるのもよろしいかと。

QACCESS フォームからサブフォームのデータを更新・入力したい

ACCESS フォームからサブフォームのデータを更新・入力したい

tbl_プロジェクトというテーブルにIDとプロジェクトコード、プロジェクトの基本情報を持たせ、f_プロジェクトフォームからプロジェクトコード、件名、契約日等のデータ及び、f_テーマサブフォームにテーマを入力できるようなフォームを作成しています。フォームで入力したものをそれぞれのテーブルに保存したいのですがうまくいかない部分があります。

フォームから入力すると、tbl_プロジェクトに所属する情報は更新されます。そのtbl_プロジェクトに所属するプロジェクトコードをサブフォームのtbl_テーマのプロジェクトコードにも反映したいのですがどのようにしたらよいでしょうか?
そういったことは可能でしょうか?分かりにくい説明で申し訳ないですが教えていただけると助かります。よろしくお願いします!



DBの構成
【テーブル】
tbl_プロジェクト (1件1件のIDとプロジェクトコードを持つ)
(フィールド:P_ID、プロジェクトコード、件名、契約日など)
tbl_テーマ(プロジェクト毎に関連のあるキーワードを持つ)
(フィールド:P_ID、プロジェクトコード、テーマ)←これのプロジェクトコードにtbl_プロジェクトのデータが入るようにしたい。
tbl_顧客(プロジェクトを依頼した顧客情報を持つ)
【クエリ】
q_テーマ(プロジェクト、テーマ、顧客を抽出するクエリ)
【フォーム】
f_プロジェクト (プロジェクトを1件ずつ表示・参照・新規作成するフォーム)
f_テーマサブフォーム (f_プロジェクトフォームのプロジェクトコードにづきテーマを
        表示・入力するサブフォーム)

リレーションはP_IDをキーに一対多で作成しています。

ACCESS フォームからサブフォームのデータを更新・入力したい

tbl_プロジェクトというテーブルにIDとプロジェクトコード、プロジェクトの基本情報を持たせ、f_プロジェクトフォームからプロジェクトコード、件名、契約日等のデータ及び、f_テーマサブフォームにテーマを入力できるようなフォームを作成しています。フォームで入力したものをそれぞれのテーブルに保存したいのですがうまくいかない部分があります。

フォームから入力すると、tbl_プロジェクトに所属する情報は更新されます。そのtbl_プロジェク...続きを読む

Aベストアンサー

No.4です。

前回の回答は、「レコードの新規登録」のみを想定していました(汗)
大変失礼致しました。


【「メインフォーム」-「サブフォームの新規レコード」間の不一致について】
(=No.4の補足での、2個目の「◆」の件)

メインフォーム側の「レコード移動時」イベントで、『プロジェクトコード』の
更新後イベントと同様の処理を行えば、解消すると思います。
(先頭1行が「Private Sub Form_Current()」となる他は、前回のVBAと全く
 同じなので、今回は省略します)


【既存レコードでの『プロジェクトコード』の空白について】
(=No.4の補足での、1個目の「◆」の件)

対処法としては、
 a)更新クエリを使用して、tbl_テーマの『プロジェクトコード』を一括更新
  (→tbl_テーマに入力済みの『P_ID』の再確認が不要な場合)
 b)「メインフォーム上のプロジェクトコードを、サブフォームの全レコードに
  一括代入」するためのコマンドボタンを、メインフォームに追加
  (→tbl_テーマの『P_ID』が正しいかを目視確認してから代入する場合)
の、2つの考え方があります。

「a」については添付画像をご覧いただくとして、ここでは「b」について説明
します。

メインフォームに『コード転記』コマンドボタンを作成したら、そのクリック時
イベントに以下のコードを記載して下さい:

Private Sub コード転記_Click()

  If MsgBox("サブフォームにプロジェクトコードを追記します", vbOKCancel, "確認") = vbCancel Then Exit Sub

  'サブフォームの全レコードを上書き更新
  With Me![サブフォームのコントロール名].Form.RecordsetClone
    Do Until .EOF
      .Edit
      !プロジェクトコード = Me!プロジェクトコード
      .Update
    Loop
  End With

  '更新を反映
  Me![サブフォームのコントロール名].Form.Refresh

  MsgBox "追記しました", , "確認"

End Sub


なお、「a/b」のどちらを採った場合でも、サブフォームの『P_ID』の上書き
編集に合わせて『プロジェクトコード』も連動して更新させるには、別途、
以下のような『P_ID』の更新後イベントでの対応が必要です:

Private Sub P_ID_AfterUpdate()
'メインではなくサブフォームの『P_ID』テキストボックスの更新後イベント

  If IsNull(Me!P_ID) Then
    Me!プロジェクトコード = Null
  Else
    Me!プロジェクトコード = DLookup("[プロジェクトコード]", "tbl_プロジェクト", "[P_ID]=" & Me!P_ID)
    '『P_ID』がテキスト型の場合は上記ではなく以下のコード
    'Me!プロジェクトコード = DLookup("[プロジェクトコード]", "tbl_プロジェクト", "[P_ID]='" & Me!P_ID & "'")
  End If

End Sub

また、この対応を組み込んで戴けば、

> テーマを修正するとフォーム上では10001が入力される。
> tbl_テーマには反映されない。

の件も解消すると思います。
(但し、別のレコードに移動したり、メニューから「レコード(R)→レコードの
 保存(O)」を選択する等して、レコードが保存してからでないと、テーブル
 には反映されないので、確認の際はご注意下さい)


・・・以上です。

No.4です。

前回の回答は、「レコードの新規登録」のみを想定していました(汗)
大変失礼致しました。


【「メインフォーム」-「サブフォームの新規レコード」間の不一致について】
(=No.4の補足での、2個目の「◆」の件)

メインフォーム側の「レコード移動時」イベントで、『プロジェクトコード』の
更新後イベントと同様の処理を行えば、解消すると思います。
(先頭1行が「Private Sub Form_Current()」となる他は、前回のVBAと全く
 同じなので、今回は省略します)


【既存レコードでの『プロジェクトコー...続きを読む

Q日付型のフィールドに空白を入れる方法を教えてください

ASP(VBScript)でSQLサーバにINSET INTO文を使ってデータを格納しているのですが、日付の部分がNULLの時、「1900/1/1」が入ってしまいます。
そのまま、空白を入れる方法はどうやったらよろしいのでしょうか?

TABLE1の内容は
番号|内容|日付です。

INSERT INTO TABLE1 VALUES ( 1, 'あいう', '')

結果
1|あいう|1900/1/1

Aベストアンサー

あとは、プログラムの書き方次第ですね、、、


If hensu=Null Or hensu="" Then
dt = "NULL"
Else
dt = "'" & hensu & "'"
End IF

E_SQL = "INSERT INTO TABLE1 VALUES & _
"( 1,'あいう', " & dt& ")"
の様に書きます。


人気Q&Aランキング