アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在アクセスで6万近くのデータを処理しています。
大字名と小字名及び地番(本番と枝番あり)を随時入力しています。
アクセス終了時に、並べ替えをしたいのですが、フィルタを使用して並べ替えの優先順位をつけました。コード(大字名で並べ替えるためにもともとある番号)→本番→枝番の順番で並べ替えするように設定しました。けれど、本番には500といった数字以外に500・520合併といった数字以外のものも含まれるため本番と枝番はプロパティをテキスト型にしています。そして並べ替えを実行すると、たしかにコード順にはなっているのですが、地番が100→1000→200→2000→というふうに必ずしも昇順になりません。どのように設定しなおしたらよろしいでしょうか?教えてください。

A 回答 (4件)

Val 関数


指定した文字列に含まれる数値を適切なデータ型に変換して返します。

です。(Access2003ヘルプより)


> Accessで検索をかけたのですが、
関数等をヘルプで確認する場合は、VBAの方からヘルプを起動しないとダメですね。

Ctrl+G で、イミディエイトウィンドウを起動し、Val と入力してから F1を押して
みてください。
    • good
    • 0

>100→1000→200→2000→というふうに必ずしも昇順になりません


文字列とした場合データベースは桁を理解せず(当たり前ですが)一文字ずつ比較して行きます。ですから
100
1000
200
2000
の並びは自然です。「桁」をデータベースに理解して貰うためには。
_100
_200
1000
2000
のように適当な空白付き(空白が消されてしまうので上記例では替わりに「_」を入力しています。本来は「 」です)でデータ入力する必要があります。それでなければ既に回答が付いているように Val 関数で数字に変換しなければなりません。
    • good
    • 0

全く別の質問ですが


http://okweb.jp/kotaeru.php3?q=1040745
で私が説明していることをじっくり読んで見てください。
この質問では評価頂けなかったが、コンピュタではどのソフトでも同じことを考えねばなりません。
フィールドは(1)数値の場合(2)内容が数字でも左詰めの文字列の場合(書式の右詰めでは不可)は問題(本件)(2)文字列の場合、機械的に左詰めのままのソートで良いばあいは問題ありませんが、それでも濁点付きの(半角)カナや漢字の読みで並べたいときは、簡単にいかず困ります。エクセルでフリガナでソートなど作るものだから、コンピュターへNewCommerは本質の理解がぼやけます。
(3)漢字と数字が混在する場合は漢字の、並び順における位置付けを考える必要があります。極端な場合は、カットして順序を考えても良い場合もあるでしょうが、今行っている仕事によります。
(4)仕事できちっとしたものにする場合はVBA等で
加工して、ソート専用のフィールドを作る必要が絶対あると思います。
(5)コンピュターのソートの基本原則で考え、我等はそれに添って、コンピュタを使う必要があります。
(6)本件でいえば数字は△△△123(△はスペース)
のようにするが数値にする。
(7)漢字混じりの「520合併」は520に対し、どう並んで欲しいのか?それはやっている仕事で決まります。それを記して質問しないと。
    • good
    • 0

並べ替えようのフィールドをクエリで作成してください。


Val 関数を使えばいいかな?

> 500・520合併
Val 関数を使うと、この場合は、500 となりますが。。

この回答への補足

ごめんなさい。Val関数ってどういうものですか?Accessで検索をかけたのですが、よくわかりませんでした
クエリはまだ使用したことがないので、がんばってみます

補足日時:2004/10/16 15:41
    • good
    • 0

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