2016-10-21 13 views
-3

Excel VBAスクリプトを作成しようとしています。私は列で範囲(A2:A1000)を文字列で持っています。範囲内の各文字列は2文字で、その後に数字が続きます(たとえば、 "AB12345"または "CD67890")。 「AB」で始まるすべての文字列の範囲を検索し、2文字の後に最大数値が何であるかを調べたいとします。 誰かがこれをどうやってどうやってやるべきか教えてくれますか?Excel VBAコードで文字列の範囲内の最大値を調べる

+1

いくつかのコードを表示するか、証拠や研究、またはこれを行う方法に関する少なくとも最善の推測を示してください。 –

+0

"AB"が最大変数と最大範囲に値を格納する場合、範囲をループし、最初の2文字をテストします。値が格納された値より大きい場合、次の繰り返しがmaxおよびrangeを置き換えます。ちょうど開始するために行く何か。 – nbayly

答えて

0

これはトリックを行う必要があります。しかし、テストされていません。 B2

MaxValue = 0 
For i=2 To 1000 
    If Cells(1, i).Value Like "AB*" Then 
     MaxValue = Application.Max(MaxValue, CInt(Split(Cells(1, i).Value, "AB")[1])) 
    End If 
Next i 
+0

それをテストするのにどれくらい時間がかかりますか? –

+0

現時点ではExcelはありません。このコードは、構文ミスの可能性を除いて機能します。それをテストするのはあなた次第です。 – table

0

次のように入力します

=IF(LEFT(A2,2)<>"AB","",--RIGHT(A2,LEN(A2)-2)) 

とダウンコピーします。その後、別のセルに入力:

=MAX(B2:B1000) 

enter image description here

このアプローチは、配列数式の使用を回避します。

関連する問題