• 締切済み

フォームから年号と請求日の末の数字変換

ACCESSのフォームのに年号と請求月と請求日の3つのテキストボックスがあり 毎回インサートの度に追加しております。 その3つを合わせてWHEREの処理年月としてインサートでテーブルに追加したいと思っていますが 年号を西暦に変換する事はどうやってするのでしょうか? 後、請求日がコンボボックスで「15]と「末」に分かれており 15日はいいのですが「末」に関してはどうやって変換して 処理年月日としてインサート出来るのでしょうか? sYM = txt年号" & "txt請求付き" & "txt請求月 ↑↑これでsYMの変数に入れたいと思っています。 select ID,出荷国,出荷担当者 FROM 顧客マスタ WHERE 処理年月日 = #2011/05/15# select ID,出荷国,出荷担当者 FROM 顧客マスタ WHERE 処理年月日 = #" & sYM & "#

みんなの回答

回答No.2

質問文自体が間違いだらけのような気がして、いったいどうしたいのか、何が求める正解なのか。。。 テキストボックスが txt年号、txt月、コンボボックスが cmb日 という名前で、 txt年号には "H" "S" "T" "M" または "平成" "昭和" "大正" "明治" って値に続いて年を入れるとする。(ex. "H23" とか "平成23" とか) strAD = Format(txt年号.Value & "/" & txt月.Value & "/" & cmb日.Value, "yyyy/mm/dd") で西暦になるはず。 月末に関してはネットでサンプルがたくさん見つかる。 というか 「VBA 和暦 西暦」 でググればわざわざ質問して一晩解決しないなんてことなく、即座に解決していたはず。 質問なんかしてないでもっとがんばれ。

全文を見る
すると、全ての回答が全文表示されます。
  • PXU10652
  • ベストアンサー率38% (777/1993)
回答No.1

「年号を西暦に変換する事はどうやってするのでしょうか?」  年号を選択するコンボボックスを用意し、入力された年に対し、昭和なら+1925、平成なら+1988を計算する。 「「末」に関してはどうやって変換して処理年月日としてインサート出来るのでしょうか?」  次の月の1日に対して、その前日を関数で求める。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • SQL2005 INSERTの質問なのですが、

    SQL2005 INSERTの質問なのですが、 顧客マスタより、年代別の人数を集計するINSERTを教えてください。 顧客マスタ...顧客コード、顧客名、年齢(15、25、35などの年齢が入っています。) 年代別人数...10代、20代、30代←(年代別にレコード件数を集計) INSERT INTO 年代別人数(10代,20代,30代) SELECT ? FROM 顧客マスタ SELECT でCASE WHEN等でやるのかと思いますが、よくわかりません。 一度のINSERTで集計できる方法を教えてください。 宜しくお願いします。

  • sql2005 UPDATEの質問なのですが、先日jamshid6さん

    sql2005 UPDATEの質問なのですが、先日jamshid6さんに 顧客毎の累計金額を顧客マスタへupdateの方法を教えて もらったのですが、期間の日付がnullの場合が発生すること があり、nullの場合は、全データ対象となる書き方を教えて 下さい。 (1) update 顧客マスタ set 累計金額=B.累計金額 from 顧客マスタ as A inner join (select 顧客コード,sum(売上金額) as 累計金額 from 売上データ where 売上日付 between '2010/03/01' and '2010/06/30' group by 顧客コード) as B on A.顧客コード=B.顧客コード (2) あと、顧客マスタには、生年月日があり、本日日付より年齢を求めて 顧客マスタの年齢にupdateすることは可能ですか? これも、生年月日がnullの時もあるので、その場合は、年齢を0にした いと思います。 顧客マスタ...顧客コード、生年月日(datetime)、年齢(int) 宜しくお願いします。

  • SELECT文の二段重ね

    次のSQL文を実行します。 create table1 (id, english) insert table1 (1,"foo") insert table1 (2,"bar") create table2 (id, japanese) insert table2 (1, "ふー") insert table2 (2, "ばー") SQL文法としては誤ってますが、成功したとします。 いま、select id from table1 where english = 'foo'; で1が得られます。 いま、select japanese from table2 where id = 1; で"ふー"が得られます。 これを一つのSQLite3のselect文で実現できないでしょうか。 select japanese from table2 where id = (select id from table1 where english = 'foo'); で良いですか? カテゴリ選択にSQLiteが無いのは、人気が無いからですかね。

  • シングルクォーテーションとダブルクォーテーションについて

    今、AccessVBAを本を見ながら勉強している初心者です。 フォームから入力されたコードに検索をしたいのですが、 Dim cnCrrDB As ADODB.Connection Dim rsKokyaku As New ADODB.Recordset ・ ・ ・ rsKokyaku.Open "Select * From 顧客マスタ Where _ 顧客コード='" & txtKokyakuCode & "'", _ cnCrrDB, adOpenStatic, adLockOptimistic とあり、[顧客マスタ]テーブルから一致する顧客コードを検索したい。っということは わかるのですが、 顧客コード='" & txtKokyakuCode & "'", のあたりの意味が、、、不明 ちなみにtxtKokyakuCodeというのは  コードを入力するための テキストボックスの名前です。 シングルクォーテーションとダブルクォーテーションを どうゆうふうに扱っているのか 教えてくださーい。 お願いします!!(わかりづらくてすみません)

  • sqlplusの処理が途中でとまる

    oracle10gを使用しています。 sqlplusでいくつかのDDLとDMLを一度にコピーペーストで流しました。一つ一つの処理後にcommit;も入っています。 しかし、最後のDMLで処理がとまってしまい、エラーもでません。内容は以下のようになっています。 insert into tbl_a (select distinct col1,'2006/01/01' from tbl_b where col1 is not null union select distinct col2,'2006/01/01' from tbl_b where col2 is not null union select distinct col3,'2006/01/01' from tbl_b where col3 is not null union select distinct col4,'2006/01/01' from tbl_b where col4 is not null union select distinct col5,'2006/01/01' from tbl_b where col5 is not null union select distinct col6,'2006/01/01' from tbl_b where col6 is not null); COMMIT; この処理を単独で実行すると、成功します。sqlpulsは、実行コマンドの量に制限などあるのでしょうか?なぜ、このようになるかわかりません。ちなみに、コマンドの全文字数は3990目で、処理が停止するのは、3648文字目です。この3648文字目にあたるのが、上記の >select distinct col3,'2006/01/01' の >select disti です。 大変急を要ししています。 よろしくお願いします。

  • SQL2005 ストアドUPDATEについて教えてください。

    SQL2005 ストアドUPDATEについて教えてください。 顧客マスタと、売上データがあり、顧客毎の売上データの売上金額の合計を 顧客マスタの累計金額にUPDATEする方法を教えてください。 顧客マスタ・・顧客コード、累計金額 売上データ・・売上日、顧客コード、売上金額 update 顧客マスタ set 累計金額=(select sum(B.売上金額) from 売データ as B where 売上日付>='2010/03/01' and 売上日付<='2010/06/30' group by B.顧客コード) from 顧客マスタ as A,売上データ as B where A.顧客コード=B.顧客コード サブクエリは複数の値を返しました。サブクエリが =、!=、<、<=、>、>= の後に続く場合や のエラーが出たり、期間中のすべての顧客の売上合計がセットされたり思うようになりません。 どなたか教えてください。 宜しくお願いします。

  • where文について

    2008-10-28のような形式でMYSQLに生年月日を登録しています。 フォームのセレクトボックスにて誕生月のみを取得しlike文では なくwhere文でデータの読み込みを行いたいのですがどうやれば できるのでしょうか? 通常だと "SELECT * FROM テーブル名 where カラム名 = '200-10-28' " でいけると思うのですが誕生月のみの情報で "SELECT * FROM テーブル名 where カラム名 = '10' " とやっても無理ですよね^^; $_POST['birth_month']で誕生月を取得し数字は01~12までです。 ※取得は問題なくできておりわからないのがwhere文の書き方です。 できるだけシンプルな方法で行いたいのですがお分かりになる方が おりましたら是非ご教授お願い致します!

    • ベストアンサー
    • PHP
  • ACCESS 処理の件数を取得したい

    どうやっていいのか困っています。 DAOで処理をしています。 下記のような処理があり、それぞれの更新、検索、追加の件数を とりたいのですがどなたか教えていただけないでしょうか? もしくはサンプル、どこかいいサイトはありませんか? よろしくおねがいします。 UPDATEの場合 CurrentDb.Execute "UPDATE T_A SET WHERE Flag = '0'", dbFailOnError SELECTの場合 strSQL = "SELECT * FROM T_N " CurrentDb.Execute strSQL, dbFailOnError INSERTの場合 strSQL = "INSERT INTO FROM T_Y " CurrentDb.Execute strSQL, dbFailOnError

  • VBでSQL

    SQLでテーブル1に該当レコードがなければインサート あればアップデートをする処理をしたいのです IF ??? THEN UPDATE テーブル1 SET SELECT * FROM テーブル2 WHERE 条件 ELSE INSERT INTO テーブル1(SELECT * FROM テーブル2) END IF ???はプライマリキーで判定をしようと考えています こんな感じでやろうとしたところ うまくいきませんでした VB上で実行しよううとしているからなのでしょうか? ADOでSQLサーバに接続しています 条件分岐もどういう条件(VBでの書き方)がわからないです。 よろしくお願いします。

  • Access クエリ

    INSERT INTO テーブルA SELECT * FROM テーブルB WHERE (フィールド1= 値を入力してください); 上記のような追加クエリがあります。 実行するとインプットボックスが表示されますが、 メッセージを改行して2行表示することは出来ませんか?