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

こんにちは。
ExcelのFIND関数について質問です。
find関数で1月と2月を検索したときに、11月と12月が一緒に検索されます。
find("1/")と設定をしています。

1月は1月だけ2月は2月だけ検索する方法を教えてください。

A 回答 (4件)

>find関数で1月と2月を検索したときに、11月と12月が一緒に検索


>されます。find("1/")と設定をしています。

とのことですが、

(1)FIND関数で1つのセル内の文字列を検索している
(2)他の関数と組み合わせて、複数のセル内の文字列を検索している

のどちらでしょうか?

(1)の場合、FIND関数は検索される文字列の先頭がら検索し、最初に見つけた条件に合致する文字列の位置を返します。
仮に検索対象セルに文章が入力されていて、その中から"1/"で1月を検索したいのに"11/"つまり11月が検索されてしまうという意味なら、"11/"の方が先にあるということです。これは、FIND関数の機能から言えば仕方ないことです。

文章ではなく、1つのセルに複数の日付が入力されている場合を考えてみると、(1)の場合で1つのセル内に何の区切りもなく日付が入力されているとすると、「1月10日、1月20日、1月30日、2月10日、2月20日、3月10日」は「1/101/201/302/102/203/10」となってしまいとても見にくいものになってしまいます。

つまり、そんな入力は誰もしないと思われるので、日付には区切りがあるのではないかと推測します。例えば、
「1/10,1/20,1/30,2/10,2/20,3/10」・・・・・(a)のようにカンマで区切るとか、
「1/10 1/20 1/30 2/10 2/20 3/10」・・・・・(b)のようにスぺースで区切るという状況なのではないかと思います。

(a)の場合で仮にA1に「11/10,11/20,1/10,12/10」という日付文字列があったとすると

=FIND(","&"1/",","&A1)・・・①

とすればきちんと1月の日付にヒットします。つまり

=FIND(区切り文字&"1/",区切り文字&A1)とすればよいことになります。
従って(b)の場合は、

=FIND(" "&"1/" ","&A1)・・・②

という数式にすればよいことになります。

上記(2)の方法でFINDを使用している場合は、具体的な他の関数との組み合わせ数式が判らないと回答しようがありません。
    • good
    • 0

御質問の文中に記述されている情報だけではFIND関数の検索文字列がどのような形で存在しているのか判りませんので、取りあえず今仮に検索対象の文字列がA1セルに入力されているものとします。


 その場合、下記のような関数にされては如何でしょうか?

1月の場合
=FIND("1/",SUBSTITUTE(A1,"11/", "11゛"))

2月の場合
=FIND("2/",SUBSTITUTE(A1,"12/", "12゛"))
    • good
    • 0

それは仕方がありません。


「1」を探せば、「01」「10」「11」も対象になります。
    • good
    • 0

実際のシートの状態のスクリーンショットは補足で貼れませんか?

    • good
    • 0

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