アプリ版:「スタンプのみでお礼する」機能のリリースについて

excel2010を使用しています。
題名のとおりexcelで連番をつけたいと思っているのですが、ただ単純に1から順にというわけではなく困っています。

というのも例のように途中で重複しているデータについては、´(ダッシュ)などで印をつけておきたいのです。
【例】
A  B
1 りんご
2 みかん
3 ぶどう
3´ ぶどう
4 いちご
5 メロン
5´ メロン
5´ メロン
6  桃

B列にあるデータがあり、それをもとに重複しているデータは印をつけた連番をA列にふりたいのですが、どのような関数で出来ますでしょうか?よろしくお願いします。

A 回答 (5件)

りんごがB1だとすると、次の式になります。



A1・・・単純に1を入れてください。
A2・・・=IF(B1=B2,MAX(A$1:A1)&"'",MAX(A$1:A1)+1)

ただし、'の付いた数字は文字データになってしまうので、セル内で左に寄ってしまいます。
このあたりはA列を全て右寄せにするなどで調整してください。
    • good
    • 0

書き忘れました。



A2の式を下方向にコピーしてください。
できれば、右寄せにしてからコピーした方がグッドです。
    • good
    • 0

A1に


=IF(B1="","",SUMPRODUCT(1/COUNTIF($B$1:B1,$B$1:B1))&IF(COUNTIF($B$1:B1,B1)=1,"","'"))
以下コピー
などのようにでいいです。

「’」を付けるなどをしているので、計算された結果は(1,2,3と数を数える)「数値」ではなく「文字列」になります。
    • good
    • 1

COUNTIF関数で累計することができます。

その累計が2以上の場合、A列に入っている文字列に「’」を追加するように書式設定や文字列連結をして表示させればいいと思います。

たとえばC列に
=COUNTIF(B$2:B2,B2)
を下側にコピーすれば累計が出ます。
これが2以上になっている場合に「’」をつけるので、
=IF(C2>2,A2&"'",A2)
でしょうか。
    • good
    • 0

B列には同じ果物の名前が順序良く並んでいるとは限りませんので次のようにしてはどうでしょう。


データは2行目から下方に入力されているとします。
A2セルには次の式を入力して下方にドラッグコピーします。

=IF(B2="","",IF(COUNTIF(B$2:B2,B2)=1,MAX(A$1:A1)+1,INDEX(A$1:A1,MATCH(B2,B:B,0))&"'"))
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!