戻る  □VBAのサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
セル式で文字列パターンマッチング・数値判定

    [133948] セル式で文字列パターンマッチング・数値判定-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ ジャングルジムの王者たーちゃん -(2023/09/03(05:00))
    □U R L/


      1)
      特定の文字列パターンがセルに入力された時に
      セル背景の色を条件付き書式で設定したいと考えています。

      パターンは正規表現的に表現すると
      [0-9][0-9]-[0-9][0-9][0-9]_.*
      (「半角数字2桁」「_」「半角数字3桁」「_」「任意の文字列」)
      ※実際には数字部分はもっと複雑です。

      VBAを使用せずに実現できますでしょうか?
      条件付き書式で、数式によって判定するで、
      数式に「=(A1 Like "[0-9][0-9]-[0-9][0-9][0-9]_.*")」
      みたいに設定するイメージです。
      (イメージを記載しているので、上記は当然エラーです。)

      ※VBAは使用禁止です。

      上記が正規表現的な指定が無理な場合は、下記を検討しています。
      これならばVBAを使用せずに、実現できるのではないかと考えています。

      2)
      =AND(ISNUMERIC(MID(A1,1,2)),MID(A1,3,1)="-",ISNUMERIC(MID(A1,4,3)),MID(A1,7,1)="_")

      実際には数字部分はもっと複雑なので、AND引数に指定する数は大量になってしまいますが、
      これならば実現できると思ったのですが、
      数字判定ISNUMERICがFALSEになり、無理でした。

      こんな感じで、セル数式のみで表現できますでしょうか?




    [133949] Re[1]: セル式で文字列パターンマッチング・数値判定-

    記事引用/メール受信=OFF■

    □投稿者/ 半平太 -(2023/09/03(09:58))
    □U R L/
      >(「半角数字2桁」「_」「半角数字3桁」「_」「任意の文字列」)
      >※実際には数字部分はもっと複雑です。
      その「複雑」の内容を説明いただかないと始まらないです。
      
      >数字判定ISNUMERICがFALSEになり、無理でした。
      ワークシート関数は「ISNUMBER」ですよ。つまり・・
      
      >=AND(ISNUMERIC(MID(A1,1,2)),MID(A1,3,1)="-",ISNUMERIC(MID(A1,4,3)),MID(A1,7,1)="_")
               ↓マイナスを掛ける
       =AND(ISNUMBER(-MID(A1,1,2)),MID(A1,3,1)="-",ISNUMBER(-MID(A1,4,3)),MID(A1,7,1)="_")
      
      複数桁一括評価なので、こう言うのもOKになりますけどね。
      
      「-1-345_abe123」
      
      ところで、エクセルのバージョンは何ですか?
      複数ある場合は、一番古いバージョンを提示してください。
      




    [133960] Re[2]: セル式で文字列パターンマッチング・数値判定-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ ジャングルジムの王者たーちゃん -(2023/09/04(20:12))
    □U R L/


      >その「複雑」の内容

      数字の桁数は、数字のブロックの数が多くなるだけで、他は提示した通りです。
      (1)の正規表現で実現できるなら、複雑さは変わらないですが、
      (2)のISNUMBERを使用した案の場合、AND引数に大量に指定しなければならなくなります。


      -----------

      ISNUMERICとISNUMBERは誤記でした。すみません。

      マイナスを掛けることで、正しく数字判定ができるようになりました。
      ありがとうございました。




    [133961] Re[3]: セル式で文字列パターンマッチング・数値判定-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ ジャングルジムの王者たーちゃん -(2023/09/04(20:13))
    □U R L/

      #訂正。たびたびすみません。

      数字の桁数は、数字のブロックの数が
        ↓
      数字の桁数や数字のブロックの数が

      (2)の案で実現できたので、解決とさせてもらいました。
      ありがとうございました。



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G