- ベストアンサー
配列に中で一番小さい値を教えてくれる関数ありませんか/アクセス、VBA
Dim Arry(10) As integer この配列 Arry(1,2,3,4...) の中で一番小さい値は何番目の値は何か 知る関数なんか、ありませんか
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Excelのワークシート関数を使う超手抜き関数です。 (^_^;) Function K() As Integer Dim ObjXL As Object Dim arrayVal(2) As Integer arrayVal(0) = 10 arrayVal(1) = 5 arrayVal(2) = 8 Set ObjXL = CreateObject("Excel.Application") K = ObjXL.Application.WorksheetFunction.Min(arrayVal()) Set ObjXL = Nothing 'Debug.Print Excel.Application.WorksheetFunction.Min(arrayVal()) 'Microsoft Excel ○○ Object Library に参照設定がしてあれば↑だけでも End Function まじめに考えたいときは [VB] ソートのアルゴリズム http://support.microsoft.com/default.aspx?scid=kb;ja;169617
その他の回答 (3)
- merlionXX
- ベストアンサー率48% (1930/4007)
アクセスは触ったことないですが、エクセルのワークシート関数を使わなくても最小値はVBAでとれます。(エクセルVBAしか知りませんが) saisyo = Arry(LBound(Arry())) For i = LBound(Arry()) To UBound(Arry()) If saisyo > Arry(i) Then saisyo = Arry(i) x = i + 1 End If Next i MsgBox "最小値は、" & x & "番目の " & saisyo & "です。"
お礼
ありがとうございました
- keirika
- ベストアンサー率42% (279/658)
No.1です 間違えました 回答の関数はエクセルのものです。
お礼
ありがとうございます エクセルには範囲を指定すると その中から小さいものをとりだせるんですね 関数は知らないけど、なんとなく想像できます
- keirika
- ベストアンサー率42% (279/658)
Application.WorksheetFunction.Min(Arry)ではどうでしょうか?
お礼
あありがとうございました