Excel'deki bir listede iki sayının tüm olası toplamlarını nasıl bulabilirim?
Burada sayıların bir listesi olduğunu varsayarsak, şimdi bu listedeki iki sayının tüm olası toplamlarını aşağıda gösterilen ekran görüntüsü gibi bulabilir misiniz? Excel'de, bu işi çözebilecek yerleşik bir işlev yoktur. Şimdi size bunu halletmeniz için bir VBA kodu sunuyorum.
Find all possible sums of two numbers in a list with VBA code
Find all possible combinations of two lists with List All Combinations
Find all possible sums of two numbers in a list with VBA code
Bir listede iki sayının tüm olası toplamlarını bulmak istiyorsanız, aşağıdaki VBA koduna başvurabilirsiniz.
1. Basın Alt + F11 görüntüleme tuşları Microsoft Visual Basic for Applications pencere.
2. tık Insert > Module, aşağıdaki kodu kopyalayıp modüle yapıştırın.
VBA: List all possible sums of two numbers in a list
Sub Combinations()
'UpdatebyExtendoffice20180628
Dim xRgArr
Dim xNum As Long
Dim I, J, K As Long
Dim xTemp As Double
Dim xRg As Range
Dim xRgCount As Long
Dim xDic As New Dictionary
On Error Resume Next
Set xRg = Application.InputBox("Select a list (one column):", "KuTools for Excel", Selection.Address, , , , , 8)
If (xRg Is Nothing) Or (xRg.Count = 1) Then Exit Sub
xRgCount = xRg.Count
K = 1
ReDim xRgArr(1 To xRgCount)
For Each xCell In xRg
xRgArr(K) = xCell.Value
K = K + 1
Next
K = 0
For I = 1 To xRgCount
For J = I + 1 To xRgCount
xTemp = xRgArr(I) + xRgArr(J)
If Not xDic.Exists(xTemp) Then
xDic.Add CDbl(xTemp), CStr(xTemp)
K = K + 1
End If
Next
Next
Range("C1").Resize(xDic.Count, 1) = Application.WorksheetFunction.Transpose(xDic.Keys)
End Sub
3. tık Tools > References, açılan iletişim kutusunda kontrol edin Microsoft Scripting Runtime onay kutusunu işaretleyin.
4. tık OK diyaloğu kapatmak için, ardından F5 kodu çalıştırmak için, olası toplamları bulmak için bir liste seçmenizi hatırlatan bir iletişim kutusu açılır.
5. tık OK, listedeki iki sayının tüm olası toplamları C sütununda listelenir.
Tip: Kod dizesinde, Aralık ("C1") Yeniden boyutlandır (xDic.Count, 1), sonucu yerleştirmeniz gerektiğinde C1'i başka bir hücreye değiştirebilirsiniz.
Find all possible combinations of two lists with List All Combinations
İki listenin tüm olası kombinasyonlarını aşağıda gösterilen ekran görüntüsü gibi bulmak veya listelemek istiyorsanız, List All Combinations yarar Kutools for Excel sana bir iyilik yapabilirim.
Kutools for Excel, ile daha fazla 300 kullanışlı fonksiyonlar, işlerinizi daha kolay hale getirir. |
1. tık Kutools > Insert > List All Combinations.
2. içinde List All Combinations iletişim kutusunda birleştireceğiniz ilk listeyi seçmek için seç düğmesine tıklayın.
3. tık Add listeyi eklemek için Combinations list Bölüm.
4. İkinci listeyi listeye eklemek için 2. ve 3. adımları tekrarlayın. Combinations list.
5. Sonra tıklayın Ok kombinasyon sonucunu yerleştirmek için bir hücre seçmek için.
6. tık OK. Tüm olası kombinasyonlar hücrelerde listelenmiştir.