• ベストアンサー

ACCESSのデータに自動で半角スペースを入れたい

ACCESSのデータに自動で半角スペースを入れたい 例えば フィールドサイズ:15(テキスト型) のフィールドに10桁の数字を入力 した場合、残りの5桁に自動的に半角スペース(もしくは「0」)を入力する方法はないでしょうか? 例)  1234567890 → 000001234567890         → @@@@@1234567890(@は半角スペース) テーブル・クエリどちらでもかまいませんので教えてください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.3

余計なお世話かもしれませんが・・・ >フィールドサイズ:15(テキスト型) これが数値型だったら簡単なんですけどね テーブルデザインのフィールドの書式に半角スペースだったら@を15個 0の場合は0を15個。 テキスト型の場合は半角スペースの場合のみできましたが 半角スペースの場合は後々トラブルの元になったかすかな記憶が・・・ テキスト型の場合はクエリなら format([フィールド名],string(15,"@")) format([フィールド名],string(15,"0")) とか

その他の回答 (2)

  • layy
  • ベストアンサー率23% (292/1222)
回答No.2

0を埋める場合は、 right$("000000000000000"&[入力項目],15) とすることで 一時的に"0000000000000001234567890" になって 結果 "000001234567890" になります。 "000000000000000"は15ケタ、つまりは"1"の1ケタでも実現できるように するためです。 半角空白でもやり方は同じ。クエリ等でよく使われる仕組みです。

  • fujiponxx
  • ベストアンサー率32% (186/580)
回答No.1

accessが手元にないのであれですが・・。 1.スペース15文字(または、0を15個)と数字を文字列として結合します。 2.RIGHT$ などの文字列を操作する関数で、   右から15文字とります。 クエリを何回かにわけてやればできると思いますが。

関連するQ&A

  • Access2013 曜日 自動的表示のクエリ

    Access2013で、備忘録作成の為、[年月日] をテーブルに短いテキスト形式で、例20001205と初めの4桁を西暦、次の2桁を月、後の2桁を日で入力してあります。 この日の[曜日] を自動的に表示させるクエリのフィールドへの記入式を教えて下さい。宜しくお願いします。

  • Accessのフィールドサイズ

    Access2000を使用していますが、テーブル作成時に 「テキスト型」でフィールドサイズを「10」に設定して データを入力すると、半角でも全角でも「10桁」までの入力に なりますが、フィールドサイズは半角も全角も関係ないのでしょうか? 「テキスト型」の最大フィールドサイズは「半角255文字」と 思っていたのですが、全角でも255文字入力できました。

  • アクセス2000で固定長フィールドの余白部分の処理と右寄せ・左寄せについて

    こんにちわ。アクセス2000で固定長フィールドのデータを入力するテーブルを 作っていますが、あるテーブルの設定条件として、次のように したいのですが、その方法がわかりません。どなたかよろしく お願いします。 フィールドA・・・10桁で設定し、実際のデータは10桁に満たない(6桁もあれ ば7桁もある)。6桁のデータを入力しても、6桁のデータが右詰になり、頭 4桁に「0」が自動でついて10桁のデータとなるようにしたい。 【例】   入力するのは:123456→データとしては0000123456 フィールドB・・・10桁で設定し、実際のデータは10桁に満たない(6桁もあれ ば7桁もある)。6桁のデータを入力しても、6桁のデータが左詰になり、う しろ4桁分の「スペース」が自動でついて10桁のデータとなるようにしたい 。 【例】   入力するのは:123456→データとしては「123456****」                       *はスペース また入力するデータはランダムな桁数の数字または半角カタカナです 以上よろしくお願いします。

  • Accessで指示書番号の自動採番

    入力フォームで指示書番号が自動採番され、テーブルにも保存されるようにするための方法を教えていただけないでしょうか。 テーブル:T_指示書 フィールド:指示書番号 フィールドはテキスト型で、番号の構成は8桁の番号で "年(二桁)" + "月(二桁)" +"部署番号(一桁、固定の数字)"+ "連番(三桁)" (例:09091001) という感じで、 年月が変われば、連番が001になるようにしたいです。 どなたか、ご教授いただければありがたいです。 よろしくおねがいします。 Access2002 winXP

  • アクセスクエリで英数字のみ半角にすることは可能?

    アクセスクエリで英数字のみ半角にすることはできますか?カタカナは全角のままにしたいです。 「アアアAAA111」 のデータがあり、更新クエリで UPDATE テーブル1 SET [テーブル1].[フィールド1] = StrConv([テーブル1]![フィールド1],8); をすると 「アアアAAA111」 になってしまいます。 「アアアAAA111」 にするにはどうすればいいでしょう? カタカナ+英字+数字になってるわけではなくランダムです。

  • AccessからOracleのテーブルに半角スペースを入力したい

    Oracle8.0.5のデータベースがあり、そのテーブルにAccess97経由でデータを登録しようとしています。なお、ODBCドライバにはOracleのドライバを使用しています。 このテーブルには CHAR(1) NOT NULLのフィールドがあり、この項目にはデータとして半角スペースをセットする場合があるのですが、Accessのデータシートビューで当該項目に半角スペースを入力して次の項目に進もうとすると次のエラーが出て入力できません。 「バリアント型ではない変数にNull値を代入しようとしました」 たぶんODBCドライバ側で半角スペースにトリムをかけてしまうためだと思われるのですが、どうにか半角スペースを入力する方法はないものでしょうか?

  • Access生年月日19990205 月日順年順

    Access2013で、生年月日をテーブルに短いテキスト形式で、例19900205 と,初めの4桁を西暦、次の2桁を月、後の2桁を日で入力してあります。 これを、月日順で且つ年順に並べるクエリを教えて下さい。宜しくお願いします。 選択クエリの フィールド欄/何と記入したらよいでしょうか? テーブル欄/空欄 並び替え欄/昇進 例 19520105 19600105 19710105 19520202 19600202 19710205

  • CSVデータをアクセスにインポートしてから

    CSVデータをアクセスにインポートしてクエリーを作ります。 例 100021 n1100 01 15桁をテキストでインポートします。 この15桁が一つのフィールドになります。 この下二桁 01 だけを一つのフィールドに抽出する事はできるでしょうか? わかりにくくて申し訳ございません・・・・

  • アクセス 入力した文字を自動で他のフィールドに返す

    アクセス2000を使用しています。 フォームでテーブルにデータを入力しています。 フィールド1に【みかん A-1】と入力するとフィールド2に自動的に【みかん】と 空白の前の文字を返したいのですが可能でしょうか? 必ず半角のスペースが間に入りますのでその前の文字(文字数は決まってません)を 自動で入力されるようにしたいです。 テーブルのフィールドにも入力されるように反映もしたいです。 DLookupではやはりフィールド全体になりますよね? 分かりにくい説明ですがよろしくお願いします。 初心者ですので分かりやすく教えて頂けると助かります。

  • Accessの短いテキスト型の後ろ空白埋めさせない

    Accessで短いテキスト型で項目を定義してデータを登録すると、 設定した桁数まで後ろに空白が勝手に埋まります。 例えばフィールドサイズを10桁に設定して "abcdefg"という7桁データを入れると、 "abcdefg"+半角スペース3桁になります。 半角スペースで埋まらないようにできませんか?