過去の桐井戸端BBS (桐ver.8)
2509 数字の入った文字列が思うように並べ替えできない タカ 1999/8/26-00:51
いつも拝見勉強になっています。

大変初歩的な質問すみません。

住所での並べ替え(番地昇順)
データ型は「文字列」

A:
1丁目17番13号
1丁目17番127号
1丁目17番128号
1丁目17番129号
1丁目17番130号
1丁目17番131号
と、したいのに

B:
1丁目17番127号
1丁目17番128号
1丁目17番129号
1丁目17番13号
1丁目17番130号
1丁目17番131号
になってしまう。

何となく分かるんだが、でも・・・
A:にならないものでしょうか。
2511 Re: あああ 1999/8/26-08:08
記事番号2509へのコメント
文字符号順だと、そうなります。
1
10
2
20
3
30

数値にすれば正常にならびます。
出来ないなら、桁をそろえればいい。

1丁目17番013号
1丁目17番127号
1丁目17番128号
1丁目17番129号
1丁目17番130号
1丁目17番131号
2517 Re: タカ 1999/8/26-22:17
記事番号2511へのコメント
「あああさん」早急のアドバイスありがとうございます。

>文字符号順だと、そうなります。
やはりそうですか

>数値にすれば正常にならびます。
私も思ったのですが
住所「項目」にて、不可能だと・・・

>出来ないなら、桁をそろえればいい。
「証明書」的に利用(印刷)するので、ダミー的な
物(値)を入力できません。
残念です。

他に方法はないようですかね。(-_-メ)
2519 Re: 悲しげ 1999/8/26-22:32
記事番号2517へのコメント
どもっ、タカさん、あああさん、

1丁目17番013号 → 1丁目17番_13号

として、半角スペースを入れてみたらどうでしょう。
印刷時には、レポートなら#trim関数でスペースを
抜く、表の一覧表印刷ならしょうがないので、項目
計算式として#trimをかませた印刷用の新項目を起こ
す。
2525 Re: あああ 1999/8/27-12:14
記事番号2517へのコメント
>>文字符号順だと、そうなります。
>やはりそうですか
>
>>数値にすれば正常にならびます。
>私も思ったのですが
>住所「項目」にて、不可能だと・・・
>
>>出来ないなら、桁をそろえればいい。
>「証明書」的に利用(印刷)するので、ダミー的な
>物(値)を入力できません。
>残念です。
>
>他に方法はないようですかね。(-_-メ)
>

号数だけの項目をつくって、
号数(昇順)、住所(文字符号順)でならべるのは?
試してないですが・・
2534 Re: 隠泊人 浦島 1999/8/28-12:02
記事番号2509へのコメント
>いつも拝見勉強になっています。
>A:
>1丁目17番11号
>1丁目17番115号
>1丁目17番116号
>1丁目17番125号
>と、したいのに
以下略

統一された書式が望ましいのですが、実際の入力の可能性としては
1丁目17番11号→→1-17-11 とする事がありますし全角で入力すら考えられます。
入力では、神経使わなくとも入力出来る様に、まず許容範囲を広く取ったほうが賢明です。
宛名ラベルに使うのなら、印字結果を考えると文字列連結が必要になるだろうし
数値を半角に統一したいのなら、別項目で半角変換の計算式を与え整備すれば良い。
仮に地番部分を独立させ、新たに項目を追加したとしても
数値型に絞れるとは考えにくい。

仮に対象の項目名を[町名地番]とします。
[郵便番号]が存在し正確に入力されているとすれば、
新たに[数値地番]の項目を追加し、項目計算式に#数値([町名地番])を指定します。
整列順位に
[郵便番号]→[数値地番]で解決すると思います。

[郵便番号]が存在しないとすれば
[市区町名]この項目があると、直前値コピーが出来るので入力は楽になりますね。
[丁目番地]を新設しデータを分割する・・・・・・・#部分列( str , n )等を使かい整備する
[数値地番]・・・・・・・・・・・・・・・項目計算式に・・・・#数値([丁目地番])
整列順位に
[府県名]→[市区町名]→[数値地番]を指定すれば良いと思います。

こういう私は、整備不良で[町名地番]のまま、整列順位不神経派(~_~;)

でわでわ
ぼちぼち名前統一しなければいけないのですが
福田 こと 隠伯人 浦島
2535 Re: MIT 1999/8/28-12:17
記事番号2517へのコメント
皆さんこんにちは
結合表(表は1つで構いません)を使って計算式により並べ替えを定義する
というのは如何ですか?例えば計算項目で(※確実な並べ替えは望めません)
#文字列(#数値([並べたい住所]),10)
などを文字列として項目定義してこの項目で並べ替えをしたもので印刷
すれば元表のデータは更新していないので

>証明書」的に利用(印刷)するので、ダミー的な
>物(値)を入力できません。

の問題はクリアできるかと思います。計算式では住所中の数字だけでなく
郵便番号や電話番号などもデータ中にあれば利用できるかも知れません。
以上ご参考までMIT
2548 皆さん ありがとうございます。 タカ 1999/8/30-13:43
記事番号2510へのコメント
皆様方。
誠にありがとうございます。

理解出来ぬ(勉強不足)部分も有りましたが、
色んな角度からマニュアルなどを活用し理解
に努力いたします。

「さすが「桐」関数使い色々な事、設定、
なんとかなるんだな、と再度感心させられました」

本文:
現在進行中
「#部分列」使い項目分割に今事を起こしています。
新項目「番地昇」を昇順として設定し直します。

大事なデータ壊さぬ様、バックアップしっかり・・・

m(__)mありがとうございました。m(__)m

戻る