何をしようとしているのかが明確でないため、すべてのコードを修正することは不可能です。しかし、以下はあなたの出発点になるかもしれません。
変数を宣言し、その型を指定することが常に最善です。
Dim i As Integer
Dim j As Integer
Dim max As Integer
Dim max1 As Integer
Dim min As Integer
Dim min1 As Integer
Dim Position As Integer
アルファベット順に宣言することを好みますが、それは必須ではありません。
必要なもの:
min = 1000
min1 = 1000
max = 0
max1 = 0
Position = 0
には次の誤りがありますSet min=min1=1000, max=max1=position=0
。
- セットはオブジェクトにのみ使用されます。
- ステートメントをコンマで区切ることはできません。
一部の言語でmin=min1=1000
は意味しますmin1=1000, min=min1
が、VBA では次のことを意味します。
If min1=1000 Then
min=True
Else
min=False
End if
Do
For 文の最後にno はありません。そう:
For i = 2 To 10
MIN と MAX はワークシート関数です。then を VBA で使用するには、それらがワークシート関数であると言わなければなりません。VBA ではステートメントの末尾にセミコロンはありません。MIN 関数で j を使用しましたが、まだその値を設定していません。
MIN と MAX のパラメータである値の場所がわかりません。
場所が現在のワークシートにある場合は、次のようなものが必要です。
With ActiveSheet
min = Application.WorksheetFunction.min(.Range("B16:F16"))
End With
またはおそらく次のように:
With ActiveSheet
min = Application.WorksheetFunction.min(.Range(.Cells(i,j),.Cells(i+5,j)))
End With
配列に対して MIN 関数と MAX 関数を使用することは可能ですが、配列の一部を選択する方法がわかりません。
これがあなたの始まりになることを願っています。