• ベストアンサー

同じ末尾数字にまとめる方法

imogasiの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

珍しい、面倒な質問だ。VBAで無いと関数とソート操作では面倒かも。 ソートして0が一番下に行ってくれないので、工夫が必要だった。 質問の例しかテストしてないので、十分テストしてみて。 (1)修正ソートキーをB列に作る Sub test01() d = Range("A65536").End(xlUp).Row MsgBox d For i = 1 To d s = "" x = Cells(i, "A") For j = Len(x) To 1 Step -1 If Mid(x, j, 1) = "0" Then s = s & "a" Else s = s & Mid(x, j, 1) End If Next j Cells(i, "B") = "'" & s Next i End Sub (2)B列で(A列もつれ持って)ソートする。VBAでも出来るが、手操作でやる。 中間結果 1 1 11 11 2 2 12 21 3 3 13 31 33 33 43 34 4 4 5 5 6 6 7 7 37 73 8 8 18 81 9 9 19 91 10 a1 20 a2 (3)望みの表に編集する Sub test02() d = Range("A65536").End(xlUp).Row x = Cells(1, "B") j = 5 k = 1 Cells(k, j) = Cells(1, "A") m = Left(x, 1) For i = 2 To d x = Cells(i, "B") If Left(x, 1) = m Then j = j + 1 Cells(k, j) = Cells(i, "A") Else k = k + 1 j = 5 Cells(k, j) = Cells(i, "A") m = Left(x, 1) End If Next i End Sub ーーーー 結果 E列より右列に 1 11 2 12 3 13 33 43 4 5 6 7 37 8 18 9 19 10 20

moguo4649
質問者

お礼

早速のご回答ありがとうございます。 VBAではこうなるんですね。 早速試してみます。

関連するQ&A

  • 抽選結果を末尾数字で纏めて表示させる方法

    どなたかご存じでしたら回答をお願いします。 数字選択式宝くじロト6の抽選結果をエクセルにつけております。 【質問】  抽選結果である第1~ボまでの7つの数字が各セルに入っておりますが、  7つの数字の末尾数字を抽出して重複チェックを行い【出現末尾数字】として  小さい数字順に表示させ、出現しなかった末尾数字を【未出現末尾数字】として  小さい数字順に表示させる方法が知りたいです。 【抽選結果シート】 ※631回を最新抽選回数とする。 抽選回 第1 第2 第3 第4 第5 第6  ボ  出現末尾数字   未出現末尾数字           629   6  16  21  30  41  43  36  0 1 3 6      2 4 5 7 8 9   630   3   7  13  18  19  41  38  1 3 7 8 9    0 2 4 5 6   631   2   5  7   10  36  40  12  0 2 5 6 7    1 3 4 8 9        ●注意事項   ・末尾数字は0~9です。   ・使用するエクセルは2010です。 以上、よろしくお願いします。

  • 数字の並び替え方法について。

    どなたかご存じでしたらご教授願います。 下記の様に、エクセルシート5行×6列で1セル毎に数字が入っています。 01 12 13 16 27 39 02 08 10 25 34 40 06 07 21 30 38 41 05 20 23 29 36 43 04 17 22 26 35 42 これを、下記のように昇順に並び替える方法を教えてください。 01 02 04 05 06 07 08 10 12 ・・・・・ 40 41 42 43 手作業で1つずつ貼り付け直して昇順に並べるのが手間になってきたので、 何か自動でできる方法が知りたいです。 【注意事項】  (1)5×6のセル内の数字は毎回違いますし、数字の重複はありません。  (2)セル内に出てくる数字は、文字でも数字でもどちらでも構いません。  (3)使用するエクセルは2007です。 以上、よろしくお願いします。

  • 四捨五入ではなく末尾を切り上げる方法はありますか

    エクセル2010を使用しています。 別の質問と被ってしまうのですが今回は A列にいろいろな数字が入っているとしてB列に計算結果を出したいのですが 1.数字の末尾が4以下の物は5に丸める。   11 → 15   12 → 15   101 → 105   123 → 125 2.数字の末尾が0や5の場合はそのまま。   10 → 10   30 → 30   500 → 500   15 → 15   45 → 45   1055 → 1055 3.末尾が6以上だったら9にする。   16 → 19   38 → 39   108 → 109   1237 → 1239 めんどうな式になると思うのですがよろしくお願い致します。

  • 【エクセルの並び替え】末尾の数字を軸に並び替え

    エクセルの並び替えについて質問させて頂きます。 末尾の数字が同じものをまとめたいと思っておりまして、エクセルの機能を利用して 末尾の数字を軸にした並び替えを行うことはできますでしょうか。 ■元のデータ    A列 1行  263 2行  952 3行  273 4行  885 5行  567 6行  195 ■やりたいこと(末尾の数字の並び替え)    A列 1行  952 2行  263 3行  273 4行  885 5行  195 6行  567 よろしくお願いします。

  • Excelにて数字の末尾に0が付加される

    お世話になっております。 職場のノートPCのExcel2007にて、セルに入力した数字の 末尾に勝手に0が付加されてしまうという問題が発生して 困っております。たとえば、3と入力して、Enterを押すと 30と表示されます。数字以外の文字、たとえばaと入力すると、 0は付加されずaと表示されます。 私以外の社員が使用しているPCのため、きっかけ等は不明です。 私が自分で試してみたことは以下のとおりです。 ・外付けキーボードを接続→変わらず ・キーボードの清掃→変わらず ・Excelの削除・再インストール→変わらず ・セルの書式確認→標準になっている ・セルの書式を文字列に変更→0は付加されない。 ・http://mahoro-ba.net/e677.htmlに記載されている方法でのExcelの  初期化→変わらず ・既存のExcelファイルで動作確認→どのファイルでも同様 ・新規に作成したファイルで動作確認→同様の問題が発生 ほかにも試したことがあるかもしれませんが、だいたい以上のことを 試しています。改善の見込みがなく、大変困っております。 対処方法をご教授くださいますようよろしくお願いします。

  • 予想数字で使用した数字の印付け

    どなたかご存じでしたらご回答願います。 数字選択式宝くじのロト6及びミニロトをエクセルで管理しております。 次回のための予想数字候補として最大30個の数字について 1~43迄の数字に該当する場合には、"■”をつける方法が知りたいです。 ●知りたいことその(1)・・・予想数字が最大6行×5列に入っている場合で、                 数字が左上から右下にかけて数字が大きくなる場合。 【予想数字】 4 5 8 9 13 14 15 17 18 19 22 23 24 25 26 27 28 29 31 32 34 35 36 38 39 40 41 42 43 ●知りたいことその(2)・・・予想数字が最大6行×5列に入っている場合で、                  数字がランダムに入っている場合。 【予想数字】 4 35 24 25 31 14 15 17 18 19 22 23 8 9 26 43 28 29 13 32 34 41 36 38 40 39 5 42 27 ●知りたいことその(2)・・・予想数字が縦に最大30個昇順で入っている場合。 【予想数字】 4 5 8 9 13 : : 40 41 42 43 【予想数字として使用した数字】・・・知りたい事その(1)、その(2)、その(3)の実行結果。 1・・・4 5 6 7 8 9 ・・・ 12 13 14 15 16 17 18 19 ・・・ 39 40 41 42 43    ■ ■   ■■       ■ ■ ■    ■ ■ ■     ■ ■ ■ ■ ■      ●注意事項   1)知りたいことその(1)、その(2)、その(3)に出てくる【予想数字】の中の数字は1~43までの     数字が重複無しで入っています。   2)使用するエクセルは2007です。 以上

  • エクセルの数字の丸め方

    エクセルの関数についてよろしくご教授ください。 【質問】 3桁か4桁の数字の末尾の数字を0か5に丸めたい。 どのような関数が適当でしょうか? 【例】 108⇒110   113⇒115   118⇒120 109⇒110   114⇒115   119⇒120 110⇒110   115⇒115   120⇒120 111⇒110   116⇒115   121⇒120 112⇒110   117⇒115   122⇒120 すなわち107⇒105、123⇒125です。 よろしくお願いいたします。

  • 重複する数字のセルを塗り潰す方法。

    どなたかご存知でしたら回答をよろしくお願いします。 【質問】  5×5マスの中に数字が1~31迄で重複して入っている場合があります。  もし重複数字があれば、その数字のセルを塗潰す方法が知りたいです。 【例】 セルのA1~E5までに下記の様に数字が入っている場合、     重複数字の4,6,7、14、15,29のセルを塗潰す。 4 8 18 19 29 3 4 6 17 29 2 4 6 23 25 7 13 14 15 20 7 12 14 15 16 【注意事項】  ・使用するエクセルは2010です。  ・塗潰しの色は全て同じ色でかまいません。 以上、よろしくお願いします。

  • 1つのセルの中にある2桁数字を入れ替える。

    どなたかご存じでしたら回答をよろしくお願いします。 【質問】  下記の【例】の様にエクセルの1つのセルのに2桁の数字が入っているとします。  2桁目と1桁目の数字を入れ替える方法が知りたいです。 【例】  (1)  3 → 30 :”03”を入れ替えて”30”となる。  (2) 10 → 01:”10”を入れ替えて”01”となる。  (3) 33 → 33:”33”を入れ替えて”33”となる。  (4) 43 → 34:”43”を入れ替えて”34”となる。 【注意事項】   ・2桁の数字は、1~43迄です。   ・使用するエクセルは2010です。 以上、よろしくお願いします。

  • 同一数字の重複を”1”としてカウントする方法。

    どなたかご存じでしたらご回答よろしくお願いします。 【質問】  エクセルのA列~E列に0~9迄の任意の数字が1つだけ入っています。  これをF列で「同一数字はいくつ重複しても”1”として数字の数をカウントする方法」  が知りたいです。具体的に下記のエクセルシートのとおりです。 ●エクセルシート   A B C D E F   3 3 1 7  8 4 ←"3"は同一数字で2個重複するが"1個"とみなして、3178の4となる。   7 7 7 7  7 1 ←"7"は同一数字で5個重複するが "1個"とみなして、7の1となる。   4 4 4 4  2 2 ←"4"は同一数字で4個重複するが "1個"とみなして、42の2となる。   6 6 6 3  1 3 ←"6"は同一数字で3個重複するが "1個"とみなして、631の2となる。   1 1 8 8  8 2 ←"1"は同一数字で2個重複、"8"は同一数字で3個重複するがそれぞれ               "1個"とみなして、18の2となる。   3 3 2 2  5 3 ←"3"と"2"は同一数字で2個ずつ重複するがそれぞれ"1個”とみなして                325の3となる。   3 4 5 6  7 5 ← 同一数字の重複は存在しないため、34567の5となる。 ●注意事項   ・使用するエクセルは2010です。 以上、よろしくお願いします。