2017-06-08 14 views
0

このコードの最後を見ると、範囲を呼び出す必要があり、範囲は最大値の位置である必要があります。その値のその位置を変数に格納し、その変数を範囲として使用する方法はありますか?配列の最大値の範囲(位置)を検索し、配列変数に格納しますか?

    Dim Retest As Boolean 

         If (Abs(Suspect - mean)/SD) > LowConf Then 

          MsgBox "95% outlier: " & Suspect 
          Retest = True 

        End If 

         If (Abs(Suspect - mean)/SD) > HighConf Then 

          MsgBox "99% outlier: " & Suspect 
          Retest = True 

        End If 




         If Retest = True And Suspect = Application.WorksheetFunction.Max(DataSet) Then 

          Range(?).Delete Shift:=xlUp 

         End If 

答えて

1

範囲A1:A10の最大値の位置を見つけ、値を強調する。このVBAコードが最大値の行番号を検索し、範囲内で使用するmatch機能を使用しています

enter image description here

Sub find() 
Dim i As Long, rownum As Integer 
' variable i contains the max value of range A1:A10 
i = Application.WorksheetFunction.Max(Range("A1:A10")) 
' rownum is the row number of the maximum value 
rownum = Application.WorksheetFunction.Match(i, Range("A1:A10"), 0) 
' use the rownum and highlight the cell 
Range("A" & rownum).Interior.Color = vbGreen 
End Sub 

、以下の例を試してみて、あなたのニーズごとに、それを修正します。

+1

これは完全に機能しました!私はそれを私が欲しいものに合うようにちょっと微調整しましたが、それは私のプログラムのパズルの最後の部分でした。私の初めてのプログラム! :) 本当にありがとう! – Nick

+0

@Nick Thats聞いてよかった –

関連する問題