[[20070419170132]] 『並べ替え順序』(松永弾正久秀) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『並べ替え順序』(松永弾正久秀)
 簡単なことなのですが、並べ替えてもうまくいきません。

 2411               1453
 1453 並べ替え → 2411   という風にどうも1が先にくるようです。
 875                 872
 872                 875
 セルの表示形式を数値にしてもダメでした。これどうすれば 872、875〜の順番になりますか。
 ちなみにここの列には式が入っておりそれが指し示すのが上の数字になるようになってます。

 範囲選択→データ→区切り位置→次へ→次へ→完了(数値になります)
 その後に、並べ替えではいかがですか?

 入力後に書式設定を変えただけでは、文字列→数値には変りません

 (Ohagi)

 【追加】
 見逃してました(^_^;)
 >ちなみにここの列には式が入っており
 その式をご提示下さい
 式の結果が「文字列」となっている場合は、その箇所を直さなければなりません


 =IF(ISERROR(VLOOKUP(前列,シート1,8,0)),"",VLOOKUP(前列,シート1,8,0)&IF(ISERROR
(VLOOKUP(前列,シート2,8,0)),"",VLOOKUP(前列,シート2,8,0))
 シート1、シート2とは違うシートの表に名前をつけたものです
 前列とは2411などの数字の前の列のことです
 区切り位置でやってもだめでした〜
(松永弾正久秀)


 シート名から取って「&」で繋げているので「文字列」になってしまっているのだと思います
 数式結果が「文字列」なので、区切り位置ではだめでしょう…
 =IF(ISERROR(VLOOKUP(前列,シート1,8,0)),"",(VLOOKUP(前列,シート1,8,0)&IF(ISERROR
(VLOOKUP(前列,シート2,8,0)),"",VLOOKUP(前列,シート2,8,0))*1)
 と「*1」をつけて「数値」にできませんか?

 (Ohagi)

必ず数字になるのでしょうか?

現在の式に1をかけてみて下さい
=IF(ISERROR(VLOOKUP(前列,シート1,8,0)),〜,VLOOKUP(前列,シート2,8,0))*1

但し、空白の場合エラーになります


 何度もすみません。。。♪

 先の回答は、ぜんぜん違っていましたので
 削除しました。

  ★ 2つのVLOOKの検査値が,必ず1つはあるんでしたら
 上の ↑ の名無しさんのレスの様に

 =(IF(ISERROR(VLOOKUP(前列,シート1,8,0)),"",VLOOKUP(前列,シート1,8,0))&
IF(ISERROR(VLOOKUP(前列,シート2,8,0)),"",VLOOKUP(前列,シート2,8,0)))*1

 で、いいとおもいます。。。

 。。。。Ms.Rin〜♪♪


 *1をつけると#VALUE!になってしまいます・・・
 (松永久秀)

 >1をつけると#VALUE!になってしまいます
 他の回答者もそのことを理解していますので
 >但し、空白の場合エラーになります 
 とか
 >★ 2つのVLOOKの検査値が,必ず1つはあるんでしたら
 のようにコメントしていますよ

 =IF(AND(ISERROR(VLOOKUP(前列,シート1,8,0)),ISERROR(VLOOKUP(前列,シート2,8,0))),"",(VLOOKUP(前列,シート1,8,0)&VLOOKUP(前列,シート2,8,0))*1)
 但し抽出すべきセルが両方とも未入力でないことが条件となります

 By しげちゃん


 回答ではないですが…
 書き込みの際には、文頭に「半角スペース」を入れて下さい
 レスが大きくなっちゃってましたので、直しておきました…(*^_^*)

 (Ohagi)

 =IF(AND(ISERROR(VLOOKUP〜という「しげちゃん」のやり方でやると#N/Aになってしまいます。Ms.Rinさんのやり方だと(最後に*1をつける)シート3以外は#VALUEになってしまいます。
なんでかな〜
きちんと書いておいた方がいいかも。表はシート毎に3つありシート1、シート2、シート3の名前が定義し
てあります。それぞれ先頭の列に1-1〜(シート1)2-1〜(シート2)3-1〜(シート3)と番号が振ってあ
り、各行にデータが入っています。4つ目のシートの列に3-10と入れると2列目には検索したものの
8列目のデータ(数字)がでるようになっています。
(松永久秀)


 回答者の式の意味を理解していれば、このように質問が続かないはずです。
 理解していれば解決するはずです。

 これ以上回答したくありませんし、考えたくもないのでので(最後の回答)
 =IF(IF(ISERROR(VLOOKUP(前列,シート1,8,0)),"",VLOOKUP(前列,シート1,8,0)&IF(ISERROR
(VLOOKUP(前列,シート2,8,0)),"",VLOOKUP(前列,シート2,8,0))="","",IF(ISERROR(VLOOKUP(前列,シート1,8,0)),"",VLOOKUP(前列,シート1,8,0)&IF(ISERROR(VLOOKUP(前列,シート2,8,0)),"",VLOOKUP(前列,シート2,8,0))*1)

 =IF(現在の式="","",現在の式*1)

 因みに、「並べ替えの前に」のコメントがでませんか?
 「数値に見えるものは全て数値として並べ替えを行う」
 で希望する並べ替えができませんか?

 By しげちゃん

 =TEXT(
 IF(ISERROR(VLOOKUP(前列,シート1,8,0)),"",VLOOKUP(前列,シート1,8,0))
 &IF(ISERROR(VLOOKUP(前列,シート2,8,0)),"",VLOOKUP(前列,シート2,8,0)),
 "??????")

 などと、桁数を揃える方法もありますね。        (6UP)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.