Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6381 / 13644 ツリー ←次へ | 前へ→

【45520】最大値最小値を求める関数で takao78ks 06/12/28(木) 15:32 質問[未読]
【45521】Re:最大値最小値を求める関数で ハチ 06/12/28(木) 15:46 回答[未読]
【45526】Re:最大値最小値を求める関数で takao78ks 06/12/29(金) 0:13 お礼[未読]
【45522】Re:最大値最小値を求める関数で ponpon 06/12/28(木) 15:50 発言[未読]
【45527】Re:最大値最小値を求める関数で takao78ks 06/12/29(金) 0:14 お礼[未読]

【45520】最大値最小値を求める関数で
質問  takao78ks E-MAIL  - 06/12/28(木) 15:32 -

引用なし
パスワード
   最大値を求める関数としてはMAX()関数がおなじみですが、引数はひとつだけと思います。では、たとえば変数a,b,c,dの4つの内から最大のものを変数eに代入する場合はMAX関数は使えないと思いますのでどのような関数が適切でしょうか?今回、IF関数を入れ子にして最大値を見つける方法は除外し、ひとつの関数で済ませたいです。同じく最小値を選ぶ関数も同様とします。どなたかお知恵をお貸しくださいませ。よろしくお願いします。

【45521】Re:最大値最小値を求める関数で
回答  ハチ  - 06/12/28(木) 15:46 -

引用なし
パスワード
   ▼takao78ks さん:
>最大値を求める関数としてはMAX()関数がおなじみですが、引数はひとつだけと思います。では、たとえば変数a,b,c,dの4つの内から最大のものを変数eに代入する場合はMAX関数は使えないと思いますのでどのような関数が適切でしょうか?今回、IF関数を入れ子にして最大値を見つける方法は除外し、ひとつの関数で済ませたいです。同じく最小値を選ぶ関数も同様とします。どなたかお知恵をお貸しくださいませ。よろしくお願いします。

普通にできると思いますけど。

Sub Test()
  Dim A As Integer, B As Integer, C As Integer
  Dim Ans As Integer
  A = 1
  B = 3
  C = 2
  
  Ans = WorksheetFunction.Max(A, B, C)
  MsgBox Ans
  
End Sub

【45522】Re:最大値最小値を求める関数で
発言  ponpon  - 06/12/28(木) 15:50 -

引用なし
パスワード
   こんなのでよいのでしょうか?
Sub myMax()
  Dim A As Long, B As Long, C As Long, D As Long
  Dim myMax As Long
  Dim myAry As Variant
  A = 11
  B = 2
  C = 3
  D = 42
  myAry = Array(A, B, C, D)
  myMax = Application.Max(myAry)
  MsgBox myMax
End Sub

【45526】Re:最大値最小値を求める関数で
お礼  takao78ks E-MAIL  - 06/12/29(金) 0:13 -

引用なし
パスワード
   ▼ハチ さん:あっそうですね、私の勉強不足でした。ありがとうございました。
>▼takao78ks さん:
>>最大値を求める関数としてはMAX()関数がおなじみですが、引数はひとつだけと思います。では、たとえば変数a,b,c,dの4つの内から最大のものを変数eに代入する場合はMAX関数は使えないと思いますのでどのような関数が適切でしょうか?今回、IF関数を入れ子にして最大値を見つける方法は除外し、ひとつの関数で済ませたいです。同じく最小値を選ぶ関数も同様とします。どなたかお知恵をお貸しくださいませ。よろしくお願いします。
>
>普通にできると思いますけど。
>
>Sub Test()
>  Dim A As Integer, B As Integer, C As Integer
>  Dim Ans As Integer
>  A = 1
>  B = 3
>  C = 2
>  
>  Ans = WorksheetFunction.Max(A, B, C)
>  MsgBox Ans
>  
>End Sub

【45527】Re:最大値最小値を求める関数で
お礼  takao78ks E-MAIL  - 06/12/29(金) 0:14 -

引用なし
パスワード
   ▼ponpon さん:アドバイスありがとうございます。なるほど
配列を使うのも手ですね。参考になりました。
>こんなのでよいのでしょうか?
>Sub myMax()
>  Dim A As Long, B As Long, C As Long, D As Long
>  Dim myMax As Long
>  Dim myAry As Variant
>  A = 11
>  B = 2
>  C = 3
>  D = 42
>  myAry = Array(A, B, C, D)
>  myMax = Application.Max(myAry)
>  MsgBox myMax
>End Sub

6381 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free