कॉलम रेंज से सेल में अद्वितीय मूल्य की जांच और डालने के लिए मैक्रो


1

मैं मैक्रों के लिए बहुत नया हूं।

मैं निम्नलिखित सूत्र को मैक्रो में बदलना चाहता था

=IF(COUNTIF($B$1:$B1,$A2)=1,"NA",$A2)

जहां $ B1 में वृद्धिशील होगी और मैं $ B2 में मूल्य को प्रिंट करूंगा।

अंतिम आउटपुट नीचे की तरह दिखना चाहिए

enter image description here

जवाबों:


1

क्या आप सिर्फ डुप्लिकेट नहीं चाहते हैं? एक स्क्रिप्टिंग शब्दकोश का उपयोग करें।

Dim dict as Object
set dict = CreateObject("Scripting.Dictionary")
Dim i as Long
For i = 2 to 9
   dict(cells(i,1)) = 1
Next
Dim dictKey as Variant
i = 1
For Each dictKey in dict.Keys()
   cells(i,2) = dictKey
   i = i+1
Next

या अंत में:

dim dictVal as string
For i = 2 to 9
  dictVal = cells(i,1)
  If Dict(dictVal).Exists Then
    cells(i,2) = cells(i,1)
  Else: cells(i,2) = "N/A"
  End if
Next

या यदि आप इसे करने के लिए कच्चे रास्ते चाहते हैं

Sub testing()
    Dim i As Long
    Dim j As Long
    Dim c As Range
    For i = 2 To 9
        With Range(Cells(i + 1, 1), Cells(9, 1))
            Set c = .Find(Cells(i, 1), LookIn:=xlValues)
                If c Is Nothing Then
                    Cells(i, 2) = Cells(i, 1)
                Else: Cells(i, 2) = "N/A"
                End If
        End With
    Next
End Sub

हां मुझे डुप्लिकेट की आवश्यकता नहीं है, लेकिन मुझे एक नए कॉलम में आउटपुट की भी आवश्यकता है, इसे उसी कॉलम में मान नहीं बदलना चाहिए
Sundhar

फिर इसके बजाय पहले कॉलम की तुलना तानाशाह की चाबियों से करें कि क्या वे देखते हैं .Exists अपडेट देखें
Raystafarian

यकीन है कि मैं एक ही कोशिश करेंगे और आप परिणाम पोस्ट करेंगे
Sundhar

नमस्ते, @Raystafarian यह मुझे इस तरह से उत्पादन देता है Oracle N / A java java jsp N / A javascript N / A .net N / A प्रबंधकीय सेवाएं N / A java N / A फिर मैंने बस हटा दिया not से If Not c Is Nothing Then तब इसने काम किया
Sundhar

हाँ, मुझे लगता है कि अब इसे देख रहा हूँ not सही नहीं है
Raystafarian
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.