回答編集履歴

3

関数の修正

2019/06/11 07:02

投稿

hiroshi0240
hiroshi0240

スコア640

test CHANGED
@@ -16,6 +16,6 @@
16
16
 
17
17
  arrayformulaを使う方法が難しそうなので、シンプルに
18
18
 
19
- 関数:=if(countA(B2,A1:A)>0,if(offset(B2,-1,0)=B2,"",B2),"")
19
+ 関数:=if(countA(B2,$A$1:$A)>0,if(offset(B2,-1,0)=B2,"",B2),"")
20
20
 
21
21
  を2行目に入力して最終行までフィルダウンコピーするのが良いかと。

2

関数の修正

2019/06/11 07:02

投稿

hiroshi0240
hiroshi0240

スコア640

test CHANGED
@@ -16,6 +16,6 @@
16
16
 
17
17
  arrayformulaを使う方法が難しそうなので、シンプルに
18
18
 
19
- 関数:=arrayformula(if(countA(B2,A1:A)>0,if(offset(B2,-1,0)=B2,"",B2),""))
19
+ 関数:=if(countA(B2,A1:A)>0,if(offset(B2,-1,0)=B2,"",B2),"")
20
20
 
21
21
  を2行目に入力して最終行までフィルダウンコピーするのが良いかと。

1

間違いの修正

2019/06/11 07:00

投稿

hiroshi0240
hiroshi0240

スコア640

test CHANGED
@@ -1,5 +1,21 @@
1
1
  1列目をそのまま並び替えるという概念ではご希望の動きは実現しないと思いますので、3列目に1列目をご希望の形で表現する列を追加する(もしくは今の1列目のデータを別の場所において、新たに1列目を作成する)方法として以下ご提案します。
2
+
3
+ 追記:前提として2列目はその列だけソートしておきます。
2
4
 
3
5
  1列目がA列2列目がB列として、3列目の先頭行に以下の関数を入力
4
6
 
5
7
  関数:=arrayformula(if(iserror(find(B1:B,A1:A))=false,B1:B,""))
8
+
9
+ 訂正
10
+
11
+ すみません、よく考えたらfindだと複数セルでつかえないですね。countAを使う方法で訂正します。
12
+
13
+ 関数:=arrayformula(if(countA(B1:B,A1:A)>0,B1:B,""))
14
+
15
+ さらにメールアドレス2に複数同じアドレスがある場合、このままだとメールアドレス1にあるアドレスの数に関係なく全部に同じアドレスがセットされるので、それを最初の1つ目のみに表示させる場合は、
16
+
17
+ arrayformulaを使う方法が難しそうなので、シンプルに
18
+
19
+ 関数:=arrayformula(if(countA(B2,A1:A)>0,if(offset(B2,-1,0)=B2,"",B2),""))
20
+
21
+ を2行目に入力して最終行までフィルダウンコピーするのが良いかと。