解決済み

エクセルで重複データを並べ替えたい

  • すぐに回答を!
  • 質問No.9589475
  • 閲覧数179
  • ありがとう数17
  • 気になる数0
  • 回答数14
  • コメント数0

お礼率 94% (278/295)

上手く説明できないので、具体例で・・・(たぶんどこかに同じ質問があるかと思うのですが、どうしても見つけられず、、、)
山田 フロア  50
岡田 倉庫  10
中村 フロア  40
山田 フロア  20
岡田 フロア  30
岡田 倉庫   20
中村 倉庫   20
中村 フロア  10
というデータを
岡田 倉庫   30
岡田 フロア  30
中村 倉庫   20
中村 フロア  50
山田 フロア  70
という風にまとめた挙げ句に左端の名前は昇順に並べたいと思っているのですが・・・
エクセルの関数で処理することはできるでしょうか

どうぞよろしくお願い致します

質問者が選んだベストアンサー

  • 回答No.11

ベストアンサー率 30% (1160/3806)

ピボットテーブルを使われるのは問題がありますでしょうか?
並べ替えも表示方法も、もちろん計算や集計もお望みどおりの結果を出せるし、スライサーを利用すればその時に知りたい情報をすぐに出せるので便利だと思うのですが。
並べ替えも自動でやってくれるので関数でないといけない。という事ではないのでしたらいいと思いますよ。
お礼コメント
yumi2007

お礼率 94% (278/295)

ありがとうございます!ピポットテーブルでばっちりです!
・・・追加のご質問になって恐縮ですが、ピポットテーブル同士を更に集計することってできるのでしょうか?
上記データですと、複数ピポットテーブルにある
岡田 倉庫   30
のデータの更に合計を出す、ということです。
(30の他に40,50があったら、120という数値を出すということです)


・・・って、これは”このユーザに質問する”なのでしょうか?
他の方でもおわかりになればいいので、この場所でいいのでしょうか?
・・・使い方がわかってなくてすみません。。。
投稿日時 - 2019-02-23 15:19:33

その他の回答 (全13件)

  • 回答No.14

ベストアンサー率 43% (189/433)

こんにちは 回答No.13の続きです
小計ツールは見つかりましたか?添付図を見て下さい。
3.マクロを実行する
 これには何種類か方法があります
3-1.ボタンをsheets上に貼り付けてこれとマクロを関連付ける
 省略します。興味があれば新しくQを立ち上げて下さい
3-2.作成したマクロを実行する
 [開発タグ]→[マクロ]→[マクロを選択]→[実行]
3-3.Worksheetダブルクリックでマクロを起動
 関数の中に別の関数を内包する入れ子のようにVBAでも入れ子が可能です
 この入れ子をサブルーチンと呼びます
 [開発]→[コード]→[左上のGeneralをWorksheet変更]
 →[右上のSelectionChangeをBeforDublClickに変更]
 →[PrivateSub…とEnd Subの空白行にマクロ名を行末の()抜きで記入]
 →[右上角の✖でコードを閉じる]
 マクロ名を集計処理()としたのが下記です
--------------------------------------------------------------------
 Option Explicit
 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
集計処理
 End Sub
--------------------------------------------------------------------+
4.補足 小計、中計、合計と複数の計はグループの基準を順位の低い順に
 処理します
 このとき、最初の処理を除いて(チェックボックス チェック)現在の小計を全て置き換えるの✓を外します 
尚、ファイルを保存するときに、ファイルの種類を「マクロを有効」として保存します

ご健闘を
お礼コメント
yumi2007

お礼率 94% (278/295)

本当に何度もありがとうございます。感謝のしようがありません。。。
なんとか頑張っています。
投稿日時 - 2019-03-16 10:10:42
  • 回答No.13

ベストアンサー率 43% (189/433)

>ちょっと難しいですが、勉強してみます。
 説明が足らずに申し訳ありません
 回答のコードは私が記述したのではありません
 Excelの「マクロ」とは
 手作業の手順をVBAに記録してくれると理解して下さい
1.手作業は
1-1.表を氏名順、場所順に並べ替える
  並び替えは順位の低い項目から高い項目へ
  添付図参照(作業は[]内をクリックで進めます
 [B2]→[データ]→[昇順]→[A2]→[昇順]
 これで、期待通り並びます。
 ただし表の中に空白のセルがあると分類はそこで止まります
1-2.小計をとる
 →[小計:データタブの右端]
 →[グループの基準、合計方法、集計フィールドを確認してOK]
この手順でマクロ作成します。
2.マクロ作成
→[開発タブ]→[マクロの記録]→[マクロ名入力]→[1.の手順]→[記録終了]
お礼コメント
yumi2007

お礼率 94% (278/295)

なるほど!マクロの記録だったのですね!それならわかります!
何度もご丁寧にありがとうございます!
投稿日時 - 2019-02-26 14:21:32
  • 回答No.12

ベストアンサー率 30% (1160/3806)

NO11です

では、ピボットテーブルを使い、データの統合をご利用されてみてはいかがでしょうか。
リンクをしておけば更新もしくは開き直しをするたびに最新総計数が表示されます。
お礼コメント
yumi2007

お礼率 94% (278/295)

ピポットテーブルでデータの統合、ですね。ちょっと調べてみます!
・・・・全然無知なもので。。。
とりあえずデータの統合はわからなかったので、手作業でしましたが、ピポットテーブルは大変使いやすかったです!
ありがとうございました!
投稿日時 - 2019-02-26 14:20:30
  • 回答No.10

ベストアンサー率 50% (233/466)

Excel(エクセル) カテゴリマスター
誰も指摘していない様なので……

まず、名前を岡田→中村→山田の順にしたいと言う事は読み仮名のアイウエオ順に並び替えたいのだと思いますので、読み仮名のデータが無いと出来ません。
単にExcelの機能で名前を並び替える場合、読み仮名ではなくJIS漢字コード順になりますので、岡田→山田→中村 の順になります。

JIS漢字コード順で良ければ、作業セルを使用してセル関数で可能です。
お礼コメント
yumi2007

お礼率 94% (278/295)

ありがとうございます。勉強になりました。
今回の本データはアルファベットなので大丈夫かと思います。
投稿日時 - 2019-02-23 15:15:12
  • 回答No.9

ベストアンサー率 43% (189/433)

お早うございます。
マクロの記録で、並び替えから小計ツールを使いました。

Sub 報告書作成()
'並び替え
Range("A2:C9").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("A2"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A2:C9")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
'集計 データタグの右端アウトライン内の小計のツール
Selection.Subtotal GroupBy:=1, Function:=xlSum, TotalList:=Array(3), _
Replace:=True, PageBreaks:=False, SummaryBelowData:=True
End Sub
お礼コメント
yumi2007

お礼率 94% (278/295)

ありがとうございます!ちょっと難しいですが、勉強してみます。
投稿日時 - 2019-02-23 15:13:46
  • 回答No.8

ベストアンサー率 20% (947/4525)

【補足】なお、グループ毎に集計して昇順に並び替えるも出来る!
お礼コメント
yumi2007

お礼率 94% (278/295)

ありがとうございました。
投稿日時 - 2019-02-23 15:12:32
  • 回答No.7

ベストアンサー率 20% (947/4525)

【確認】添付図のようなことがやりたいのかな?

結果は、質問者と並びが違う。理由は、列1と列2を昇順で読み込んだから。

? DSelect("SELECT DISTINCT F1, F2 FROM [Sheet4$A1:C8] ORDER BY F1, F2",,"|",,False)
中村;フロア|中村;倉庫|山田;フロア|岡田;フロア|岡田;倉庫

SQLを利用すれば、重複を省いてデータを読み込むのは関数一発。後は、どうでも料理可能。

※SQLを使う気があれば、DSSelect()を紹介するが・・・
お礼コメント
yumi2007

お礼率 94% (278/295)

ありがとうございます。難易度が高いですが、少し勉強してみます!
投稿日時 - 2019-02-23 15:12:22
  • 回答No.6

ベストアンサー率 28% (4468/15891)

Excel(エクセル) カテゴリマスター
Office365のエクセルでは、Sort関数が、入った。
https://support.office.com/ja-jp/article/sort-%E9%96%A2%E6%95%B0-22f63bd0-ccc8-492f-953d-c20e8e44b86c
とうとうSortなどの機能が、エクセル関数の世界に、入ってきた。
VBAを使わなくても良い場面が増える。
ーー
GoogleApsでも先行していた。
http://hito-ride.com/?p=3660
こういうソフトを使えば、この問題も考えやすくなるのでは。
ーー
Excelピボットテーブルを使うのもどうかな。
お礼コメント
yumi2007

お礼率 94% (278/295)

ありがとうございました。
sort関数は知らなかったので、勉強してみます!
投稿日時 - 2019-02-20 11:20:02
  • 回答No.5

ベストアンサー率 28% (4468/15891)

Excel(エクセル) カテゴリマスター
何がしたいのか?
(1)データを並べ替えてひょうじしたいのか?
(2)A,B列の2列を組み合わせた分類の係数を出したいのか。?
(1)は並べ替え操作で、(2)は、SUMIFS関数でできるのではないか。
もっと、質問の表現法を勉強のこと。こんな個別の質問を解決する以前のことだと思う。
 並べ替えは、エクセル関数では、まどろっこしい、不適な方法です。
お礼コメント
yumi2007

お礼率 94% (278/295)

わかりにくくてすみませんでした。
並べ替えは、エクセル関数では不向きなのですね。ありがとうございました。
投稿日時 - 2019-02-20 11:16:05
  • 回答No.4

ベストアンサー率 0% (0/0)

回答No.3 です。
リンク先が間違っていました…

https://dekiru.net/article/15709/

こちらで確認して下さい。
お礼コメント
yumi2007

お礼率 94% (278/295)

ありがとうございました!
投稿日時 - 2019-02-20 11:14:59
13件中 1~10件目を表示
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

特集

ピックアップ

ページ先頭へ