EXCELマクロで文字列&不等号で条件判定してくれと依頼されて困った件!

スポンサーリンク
036-ホビー

へっぽこヘタレシステム管理者の管理人です。

職場で、EXCELマクロの作成依頼を受けて・・・

条件を伺ったところ・・・

文字列&不等号で条件が記載されてきて意味が分からん

手書きの紙で・・・

【+以上だったら】

と記載されていました。

管理人には【???】だったので、電話で聞くと・・・

セルには・・・

  • ++
  • +++
  • ++++
  • +++++
  • ±

が条件として入力されていて・・・

【+】が1個以上だったら・・・

条件判定として【TRUE】となるとのことです。

ただ、テキストで不等号を条件として記載するのは意味不明なので止めて欲しいところです。

言葉では分か難いと思いますので、エクセルの画面では下図の様になります。

スポンサーリンク

配列で処理する

どういう手法を使うかイロイロと悩みましたが・・・・

配列で処理することにしました。

スポンサーリンク

コードは次のとおりです。

Sub main()

    
    Worksheets("Sheet1").Activate
        
    
    Dim array1() As Variant
    
    array1 = Array("+", "++", "+++", "++++", "+++++")
    
    
    Dim rowcount As Long
    rowcount = Cells(Rows.Count, 1).End(xlUp).Row
    
    For i = 2 To rowcount
    
            Cells(i, 2).Value = False
    
        For j = LBound(array1) To UBound(array1)
        
            If Cells(i, 1).Value = array1(j) Then
                Cells(i, 2).Value = True
            End If

        Next j
    
    Next i
    
End Sub

配列【array1】にヒットすべき文字列を格納します。

ブログランキングにご協力ください!
ブログランキング・にほんブログ村へ

そこから・・・

参照するセル = 配列の中の文字列を順番照合

し・・・

該当する文字列があれば・・・

【TRUE】を返すという仕組みにしてみました。

いちおうこれで、やりたい事はできましたが・・・

もっとスマートなやり方があるのかもしれません。

ブログ開設に必要なドメイン取得、サーバーレンタル、ASPの登録等は、こちらのサイトから!

コメント

タイトルとURLをコピーしました