संपादित करें: सरल समाधान (क्रेडिट सेंटवैक को जाता है)
दो कॉलम को समेटें:
=$A2&$B2
'रो लेबल' और 'वैल्यू' के रूप में कॉन्टेनेटेड कॉलम का उपयोग करके एक पिवट टेबल बनाएं। फिर सुनिश्चित करें कि 'मान' गणना (डिफ़ॉल्ट होना चाहिए) की गणना कर रहा है।
जटिल समाधान
आप कॉलम C में दो कॉलम समाप्त कर सकते हैं:
=$A2&$B2
कॉलम डी में, आपको एक फ़ंक्शन की आवश्यकता होगी जो यह निर्धारित करता है कि आइटम किसी अन्य आइटम का डुप्लिकेट है ताकि मूल्य प्रत्येक आइटम में से केवल एक के लिए सही हो (यह केवल तभी काम करता है यदि आइटम डेटा कॉलम द्वारा सॉर्ट किए जाते हैं, लेकिन मैक्रो बाद में ऐसा करता है)।
=$C1<>$C2
यदि स्तंभ E में मिलान किया गया है तो गणना की गणना करें:
=COUNTIF($C:$C,$C2)
एक मैक्रो आपके लिए सभी संयोजनों को ढूंढ लेगा, उन्हें शीट 2 पर रखें और गिनती की प्रतिलिपि बनाएँ। नीचे दिए गए कोड से कुछ धारणाएं बनती हैं, लेकिन आप इसे संशोधित कर सकते हैं कि आपको क्या चाहिए।
Option Explicit
Sub GetCombinations()
Dim sheet1, sheet2 As Worksheet
Set sheet1 = Worksheets(1)
Set sheet2 = Worksheets(2)
Dim sStartColumn As String
Dim iTopRow As Long
Dim sEndColumn As String
Dim iBottomRow As Long
sStartColumn = "A"
iTopRow = 1
sEndColumn = "E"
iBottomRow = sheet1.UsedRange.Rows.Count
Dim Rng As Range
Dim sRange1 As String
sRange1 = sStartColumn & CStr(iTopRow) & ":" & sEndColumn & CStr(iBottomRow)
Set Rng = sheet1.Range(sRange1)
Rng.Sort Key1:=Range("A2"), Order1:=xlAscending, _
Key2:=Range("B2"), Order2:=xlAscending, _
Orientation:=xlSortColumns, Header:=xlYes
Dim i, j As Integer
j = 2
For i = 2 To iBottomRow
If sheet1.Cells(i, 4) Then
sheet2.Cells(j, 1) = sheet1.Cells(i, 1)
sheet2.Cells(j, 2) = sheet1.Cells(i, 2)
sheet2.Cells(j, 3) = sheet1.Cells(i, 5)
j = j + 1
End If
Next i
End Sub
इससे हो जाना चाहिए।
3कहीं? कहां गया3परिणामों में से आए?