VBA Max İşlevi - Excel VBA'da Max Kullanarak Maksimum Nasıl Bulunur?

İçindekiler

Max, adından da anlaşılacağı gibi, belirli bir veri kümesinden veya diziden maksimum değeri bulmak için kullanılır, bu bir çalışma sayfası işlevidir, bu nedenle çalışma sayfası yöntemi ile çalışma sayfası işlevi olarak kullanılır, bu yöntemin bir sınırlaması vardır. function bir diziyi argüman olarak alır, dizide yalnızca 30 değer olabilir.

Excel VBA Max İşlevi

Excel'de birkaç sayısal fonksiyonumuz var. Aralıktaki sayısal değerleri sayabiliriz, toplayabiliriz ve minimum değeri ve aynı zamanda lotun maksimum değerini bulabiliriz. Lotun maksimum değerini bulmak için, sağlanan sayı aralığının maksimum değerini döndürecek olan MAX adlı bir excel fonksiyonumuz var. VBA'da, maksimum sayıyı elde etmek için "MAX" adlı yerleşik bir işleve sahip değiliz. Bu Excel VBA Max Fonksiyonunun nasıl kullanılacağını göreceğiz.

Excel VBA'da Max Function Örneği

Maalesef, MAX'ı VBA yerleşik işlevi olarak kullanma lüksüne sahip değiliz, ancak bu işleve Çalışma Sayfası İşlev sınıfının bir parçası olarak erişebiliriz.

Şimdi aşağıdaki koda bakın.

Kod:

Alt MAX_Örnek1 () Dim a As Tamsayı Dim b As Integer Dim c As Integer Dim Result As Integer a = 50 b = 25 c = 60 Result = WorksheetFunction.Max (a, b, c) MsgBox Result End Sub

Yukarıdaki örnekte, sayıyı saklamak için üç değişken tanımladım.

Dim a As Integer  Dim b As Integer  Dim c As Integer

Sonuçları göstermek için bir değişken daha tanımladım.

Tamsayı Olarak Dim Sonucu.

İlk 3 değişken için sırasıyla 50, 25 ve 60 gibi değerler verdim.

a = 50  b = 25  c = 60

Sonraki satırda, sonucu "Sonuç" değişkenine depolamak için MAX'ı bir VBA çalışma sayfası işlevi sınıfı olarak uyguladım.

Sonuç = Çalışma Sayfası Fonksiyonu.Max (a, b, c)

Sonunda, VBA'daki mesaj kutusundaki değeri gösteriyorum. MsgBox Sonucu

Şimdi bu kodu F5 kullanarak veya manuel olarak çalıştıracağım ve mesaj kutusunda sonucun ne olduğunu göreceğim.

Yani sonuç 60'tır.

Sağlanan tüm sayılardan, yani 50, 25 ve 60, maksimum sayı 60'tır.

Excel VBA'da Gelişmiş Max Örneği

Döngüler, VBA'da tüm hücrelerin üzerinden geçip sonuca ulaşmak için çok önemlidir. Sayılar listesinden maksimum değere ulaşmak için VBA MAX'i döngülerle nasıl birleştireceğimizi göreceğiz.

Aşağıda gösterildiği gibi, öğelerin bir listesi ve bu öğelerin aylık satış performansı var.

Şimdi, her ürün için, resimde gösterildiği gibi 4 ay boyunca maksimum satış sayısının ne olduğunu bilmek istiyorum.

MAX'ı excel'e uygulayarak bunu birkaç saniye içinde bulabiliriz.

Şimdi VBA kodunu kullanarak maksimum değeri nasıl bulacağımızı göreceğiz.

Aşağıdaki kod, her öğe için maksimum sayıyı bulma görevini yerine getirecektir.

Kod:

Alt MAX_Example2 () Dim k As Integer For k = 2 ila 9 Hücre (k, 7) .Value = WorksheetFunction.Max (Range ("A" & k & ":" & "E" & k)) Sonraki k Son Alt

Bu, maksimum sayıyı kolayca belirleyecektir.

Şimdi kodu manuel olarak çalıştırın veya F5 tuşuna basın ve aşağıda gösterildiği gibi sonucu görün.

Maksimum değerleri ay adı almak için aşağıdaki kodu kullanın.

Kod:

Alt MAX_Example2 () Dim k As Integer For k = 2 ila 9 Hücre (k, 7) .Value = WorksheetFunction.Max (Range ("B" & k & ":" & "E" & k)) Hücreler (k, 8) .Value = WorksheetFunction.Index (Range ("B1: E1"), WorksheetFunction.Match _ (Cells (k, 7) .Value, Range ("B" & k & ":" & "E" & k) )) Sonraki k Son Alt

VBA max işlevi tarafından sağlanan değere bağlı olarak, INDEX işlevi & MATCH işlevi sonraki satırda ilgili ayı döndürecektir.

Hatırlanacak şeyler

  • Yinelenen numaraları oradaysa, önce gelen yalnızca bir numara gösterecektir.
  • Bu, Excel'deki MIN işlevinin zıt formülüdür.
  • MAX bir VBA işlevi değildir. Excel'de yerleşik bir işlevdir, bu nedenle çalışma sayfası işlev sınıfını kullanır.

Bu Excel Şablonunu buradan indirebilirsiniz - VBA Max Function Template.

Ilginç makaleler...