質問する
0

フィルタで数字の昇順並び替えができない

質問日 2019-12-10 14:27:58 +0100

micff のGravatar画像

updated 2019-12-10 14:46:33 +0100

バージョン: 6.2.2.2 (x64)
以下のようなカラムがあります

12  
(空のセル)  
ID(半角英字)  
1  
2  
3  
4  
5...以下数字

IDにフィルタを設定して昇順にすると、

1  
10  
3  
345

となりテキストとして並び替えされているような結果になってしまいます。
数字の順序にするにはどうしたらよいでしょうか。
カラム全体を選択→書式設定→数字 に設定しています。

edit retag flag offensive close merge delete

Comments

ご意見を色々いただいているので、サンプルファイルを作成しましたので、 お時間がある方はご確認ください。 最初のシートが元のデータで二番目のシートが該当列にオートフィルタ昇順をかけたものです。 リンクテキスト

micff のGravatar画像micff ( 2020-02-19 07:57:55 +0100 )edit

404 not found

himajin100000 のGravatar画像himajin100000 ( 2020-02-20 21:19:33 +0100 )edit

リンクをクリックしてみましたがファイルが見れません

hibagonsan のGravatar画像hibagonsan ( 2020-02-21 00:56:17 +0100 )edit

2 Answer

0

回答日 2020-02-26 03:57:36 +0100

MAMI のGravatar画像

画像の説明

未検証。

並べ替えオプションの「自然数・・・」にチェックをいれてみては?

edit flag offensive delete link もっと
0

回答日 2019-12-11 21:30:54 +0100

JO3EMC のGravatar画像

若干条件を汲み取りかねているところがあり、推測が入りますが…。
仮にA1セルに「12」、A3セルに「ID」、A4セル以下に1~345の値が入力されていて、A3セルにフォーカスされた状況で[昇順で並べ替え]の操作を行ったものと理解しました(「フィルタ」という操作がちょっと汲み取りかねています…もしかすると自分の把握していない機能なのかも知れず…その場合は的外れになります。すみません)。

A4セルの「1」以下「345」までのセル(差し支えなければA列全体でも構いません)を選択してコピーし、メニューの[編集(E)]-[形式を選択して貼り付け(S)]-[書式設定されていないテキストの貼り付け(A)]、またはCtrl+Alt+Shift+Vで同じセル範囲に上書きペーストしてみるとどうでしょうか。ペーストの際に「テキストのインポート」ダイアログが開くと思いますので、フィールド欄で列の種類を「標準」にして(通常は特に操作しなくてもそのようになっていると思います)「OK」とします。そうしておいて改めて[昇順で並べ替え]を。

該当のセルデータは過去にテキスト扱いになっていなかったでしょうか。数値と文字列は一見同じように表示されていても内部的には異なる型として保持されていたりして、書式設定を変更しただけでは直ちに型変更してくれません。関数などで意識的に型変換するか、再入力してやる必要があります。上記の措置は、まとめて再入力することに相当します。MS Excelなどでも同様だったと思います。

edit flag offensive delete link もっと

Comments

お返事ありがとうございます。
条件わかりにくくてすみません。おっしゃっているとおりの条件です。 ただ数値が入っておらず空白のセルも含みます。
フィルタと呼んでいたのは、A3セルを選択してオートフィルタというボタンを押して使うものです。
セル内に下↓のボタンが付きます。
そのボタンを押下すると、昇順でソートという項目があります。
その昇順が質問したような挙動になるという事でした。
ちなみにgoogleスプレッドシートとエクセルでは希望した挙動になります。

まとめて再入力
こちら試してみましたがやはりテキスト型にたいする昇順のような結果になりました。

引き続きご回答をお待ちしております。

micff のGravatar画像micff ( 2019-12-13 16:35:49 +0100 )edit

再現しない

Version: 6.5.0.0.alpha0+ (x64)

Build ID: bbd7c589d6d98631f8e95d580e1f775179db3db8

CPU threads: 4; OS: Windows 10.0 Build 18363; UI render: default; VCL: win;

Locale: ja-JP (ja_JP); UI-Language: en-US

Calc: threaded

himajin100000 のGravatar画像himajin100000 ( 2019-12-16 13:03:55 +0100 )edit

ありゃりゃ…ダメでしたか…。残念。それくらいしかないと思ったんですがねぇ…。
となると私の方も現象再現が出来ず、追跡が難しそうです。手元では数値ソート出来ています。教えていただいたオートフィルタからの操作も含めて問題ありません。Win10home+LibO6.3.4.2です。

「新規作成」から現象再現までの操作手順が分かると、他の方も含めて再現確認がやりやすいかも知れません。

A2セルの空白はオートフィルタを適用するA3セルより上にあるので無関係と思います。A4セル以降に空白セルがあるのであれば、オートフィルタを適用した時点でその空白以降はフィルターや並べ替えの対象から除外されるはずです(空白が現れるまでの範囲がオートフィルタの範囲になります)。空白を超えて適用したければ、予めその範囲を選択しておいてからオートフィルタを適用する操作が必要となるはずです。


ちなみに…。LibO起動時に表示される「今日のヒント」に少し関連したトピックが収録されているようなので紹介しておきます。並べ替えの操作をメニューの[データ(D)]-[並べ替え(S)]から行うと、「並べ替え」ダイアログが表示されます。その中の[オプション]タブに「自然順の並べ替えを有効にする(C)」というチェックがあるようです。もしかするとここにチェックを入れると期待の並べ替えを行ってくれるかも…と、ふと思ったりしました。
ただこれは対処療法でしかなく、問題の本質は別のところにあるのだろうな、とは思います。

JO3EMC のGravatar画像JO3EMC ( 2019-12-17 17:13:53 +0100 )edit

同じセルへの貼り付け直しは前の書式設定がしぶとくのこるので、
メモ帳に貼り付け>直接指定した書式の解除>メモ帳から貼り付け
ぐらいやった方が確実です。

meguro.jun のGravatar画像meguro.jun ( 2020-02-19 14:51:04 +0100 )edit

試しにA列を先にセルの書式設定で文字列に書式設定してから、半角の数字(文字)を入力。 その後、A列をまとめてセルの書式設定で、数(Standrd)に書式設定しても元の数(文字)は数値には変換されませんでした。 なので、もともとの数(文字列)がそのまま残っていたのではないですか? =VALUE(文字列) 関数で数(文字)を数値に変換する方法もあります。

hibagonsan のGravatar画像hibagonsan ( 2020-02-21 01:30:10 +0100 )edit
ログイン/サインアップして回答する

質問ツール

2 followers

Stats

Asked: 2019-12-10 14:27:58 +0100

Seen: 501 times

Last updated: Feb 26