
はじめまして。
うまく説明できるかわかりませんが、どうぞよろしくお願いします。
エクセルでA列に1から50までの数字が優先順位として降順で入力されているとします。優先順位が変わったときに、例えば、優先順位が3だったセルに1と入力した場合、下記のように自動的に優先順位を再計算するようにできるものでしょうか?
A A
1 1
2 2
3 1(3から1に変更)
4 4
5 5
. .
. .
(変更後)
A
2
3
1
4
5
.
.
自動的に順位を再計算できれば、その後対象データを新しい優先順位順に並べ替えようと思っています。
何卒お力をお貸しください(><)
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
たとえばこういうことができればよいのでしょう。
・順位10を5に変更したとき
順位1~4は順位変わらず
順位5~9は順位が1ずつ下がる(6~10になる)
順位11~ は順位変わらず
・順位10を20に変更したとき
順位1~9は順位変わらず
順位11~20は順位が1ずつ上がる(10~19になる)
順位21~ は順位変わらず
変更する順位が1つだけなら以下のようなことは可能です。
B列に元順位(B2~B51に1~50が入るとします)
A列の変更する元順位の行に変更後順位を記入
D2セルに変更後順位(作業用)
E2セルに変更前順位(作業用)
C列に変更後順位を表示
として、
D2;=MAX(A2:A51)
E2;=VLOOKUP(D2,A2:B51,2,FALSE)
C2;=IF(B2=$E$2,A2,IF($D$2<=$E$2,IF(AND($D$2<=B2,B2<=$E$2),B2+1,B2),IF(AND($E$2<=B2,B2<=$D$2),B2-1,B2))) としてC51までコピー
順位10を変更するときはA11セルに変更後の順位をいれればC列に変更後順位が表示されます(A11セル以外は空白にしておくこと)。
ちなみに2つ以上の順位の変更はかなり難しいです。少なくとも関数ではできません。
No.4
- 回答日時:
簡単そうで、あまり一般的な処理では無いと思います
条件は重複無く連続で昇順であること、最大値より大きな値を入力しない
1位の変更だけでなく、5位を10位にといった変更にも対応しています
'--------------------------------------------------------
Sub 順位書換()
Dim 書換開始, 書換終了, 値調整, 処理行 As Integer
For 処理行 = 1 To Range("a65536").End(xlUp).Row
If Cells(処理行, 1).Value <> 処理行 Then
If 処理行 > Cells(処理行, 1).Value Then
書換開始 = Cells(処理行, 1).Value
書換終了 = 処理行 - 1
値調整 = 1
Exit For
ElseIf 処理行 < Cells(処理行, 1).Value Then
書換開始 = 処理行 + 1
書換終了 = Cells(処理行, 1).Value
値調整 = -1
Exit For
End If
End If
Next 処理行
For 処理行 = 書換開始 To 書換終了
Cells(処理行, 1).Value = Cells(処理行, 1).Value + 値調整
Next 処理行
End Sub
'--------------------------------------------------------
エラー処理をしていないので、条件以外で実行すると、とんでもない結果になります
No.3
- 回答日時:
A列だけでは無理と思います。
たとえばA B
1 =RANK(A1,$A$1:$A$50,1)
2 =RANK(A2,$A$1:$A$50,1)
3 =RANK(A3,$A$1:$A$50,1)
4 =RANK(A4,$A$1:$A$50,1)
5 =RANK(A5,$A$1:$A$50,1)
の計算結果は
A B
1 1
2 2
3 3
4 4
5 5
ですが、A3を-1にすると、
A B
1 2
2 3
-1 1
4 4
5 5
となります。
全ての列の優先順位が変わる可能性があるのなら、優先順位の高い順に―50から使います。
No.2
- 回答日時:
>もともと3だったセルに1といれると、関数またはマクロを使って優先番号を上のほうから自動的に再計算することができればと思っていたのです。
3番だったものが1番に繰り上がったので、1番だったものが2番、2番だったものが3番というようにどうにか自動再計算できないものかと考えていたのです。<私には マクロは、わかりませんが
自動的に再計算されるのは難しいような気がします。
No.1
- 回答日時:
エクセル2003で並べ替えは、データ → 並べ替え → 最優先されるキーを選択 → 降順、昇順を選択
でできます。
質問がよくわかりません
>A列に1から50までの数字が優先順位として降順で入力されているとします。<
(1)優先順位は、通常1,2と順に並ぶものではないですか例示の1、2、3、4、5も昇順(小さい数字から順に並ぶ)ですね、降順という意味が良くわかりません。
>優先順位が3だったセルに1と入力した場合
質問のように3が1になると結果として1が二つになりますから<
並べ替えをすると1、2,3、4、5とはならず1、1、2、4、5(昇順の場合)と1が二つとなり3がない結果になります。
早速の回答ありがとうございます。
説明ベタですみません。
>A列に1から50までの数字が優先順位として降順で入力されているとします。<
(1)優先順位は、通常1,2と順に並ぶものではないですか例示の1、2、3、4、5も昇順(小さい数字から順に並ぶ)ですね、降順という意味が良くわかりません。
→「降順」は「昇順」の間違いでした。
>優先順位が3だったセルに1と入力した場合
質問のように3が1になると結果として1が二つになりますから<
並べ替えをすると1、2,3、4、5とはならず1、1、2、4、5(昇順の場合)と1が二つとなり3がない結果になります。
→そうなんですが、もともと3だったセルに1といれると、関数またはマクロを使って優先番号を上のほうから自動的に再計算することができればと思っていたのです。3番だったものが1番に繰り上がったので、1番だったものが2番、2番だったものが3番というようにどうにか自動再計算できないものかと考えていたのです。
質問の内容がうまく伝わればいいのですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(悩み相談・人生相談) 僕の家族は、父、母、長男、姉、次男、僕の6人家族です 僕の家族はいつからか、家族内で優先順位が出来ま 3 2022/06/12 04:14
- Excel(エクセル) Excel 複数列のある文字を優先して1列に表示したいです 2 2022/12/03 12:07
- 仕事術・業務効率化 作業をする時に、作業順や優先順位をちゃんと付けれるようになりたいです。 自分は作業したりする時、頭の 3 2023/07/11 03:15
- その他(恋愛相談) 恋人の優先順位 2 2023/06/27 20:01
- 世界情勢 防衛費の増額は必要ですか? また、分配優先順位は? 19 2022/12/28 11:13
- カップル・彼氏・彼女 彼女よりも友達の方が優先順位が高く、恋愛の優先順位が低いと言われました。そのことをショックに思ってい 4 2023/04/20 23:03
- 経済 日本の世界競争力が34位ですね。 ヨーロッパが出した統計なのでヨーロッパが有利にされてるとは思うんで 3 2022/07/25 10:43
- その他(教育・科学・学問) 優先順位の付け方 2 2022/10/15 10:16
- Excel(エクセル) エクセル 3つの値の中からデータを抽出させる方法 4 2023/08/24 11:00
- Excel(エクセル) エクセル、日々の集計整理方法。(再送です。) 5 2022/10/02 00:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのVBAで集計をしたい
-
【関数】同じ関数なのに、エラ...
-
【画像あり】オートフィルター...
-
【マクロ】元データと同じお客...
-
【マクロ】数式を入力したい。...
-
【マクロ】【配列】3つのシー...
-
Office2021のエクセルで米国株...
-
vba テキストボックスとリフト...
-
【マクロ】【相談】Excelブック...
-
【マクロ】実行時エラー '424':...
-
【マクロ】列を折りたたみ非表...
-
他のシートの検索
-
ページが変なふうに切れる
-
【マクロ】オートフィルターの...
-
【条件付き書式】シートの中で...
-
特定のセルだけ結果がおかしい...
-
【マクロ】左のブックと右のブ...
-
エクセル ドロップダウンリスト...
-
Excelに貼ったXのURLのリンク...
-
【マクロ】アクティブセルの時...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル
-
【マクロ】WEBシステムから保存...
-
エクセルの循環参照、?
-
エクセル ドロップダウンリスト...
-
エクセルのdatedif関数を使って...
-
特定のセルだけ結果がおかしい...
-
【マクロ】A列にある、日付(本...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】アクティブセルの時...
-
【エクセル】期限アラートについて
-
iPhoneのExcelアプリで、別のシ...
-
【関数】同じ関数なのに、エラ...
-
Excelの新しい空白のブックを開...
-
【マクロ】3行に上から下に並...
-
【マクロ】宣言は、何のために...
-
VBA チェックボックスをオーバ...
-
Excelについての質問です 並べ...
-
【マクロ】アクティブセルの2...
-
【関数】不規則な文章から●●-●●...
おすすめ情報