مارتین یک کاربرگ دارد که در ستون B، تعداد زیادی کلمه کلیدی را شامل می شود. هر سلول منفرد می تواند هر تعداد کلمه کلیدی منحصر به فرد داشته باشد که هر کدام با یک فاصله از هم جدا شده اند. او به راهی برای تولید فهرستی از کلمات کلیدی منحصر به فرد به همراه تعداد ردیف های حاوی هر کلمه کلیدی نیاز دارد.
هیچ راه ساده ای برای ایجاد لیست کلمات کلیدی با استفاده از فرمول ها وجود ندارد. با این حال، می توانید با استفاده از یک ماکرو، چنین فهرستی را سریع انجام دهید. در زیر نمونه ای وجود دارد که کار را خیلی سریع انجام می دهد.
Sub KeywordList()
Dim dTally As Dictionary
Dim rSource As Range
Dim c As Range
Dim d As Variant
Dim aKeys() As String
Dim J As Integer
Dim sTemp As String
Set dTally = New Dictionary
Set rSource = Selection
For Each c In rSource
Put all keywords in an array
aKeys = Split(c, " ")
For J = LBound(aKeys) To UBound(aKeys)
sTemp = LCase(Trim(aKeys(J)))
If Len(sTemp) > 0 Then
If dTally.Exists(sTemp) Then
Increment existing keyword
dTally(sTemp) = dTally(sTemp) + 1
Else
Add new keyword and count
dTally.Add sTemp, 1
End If
End If
Next J
Erase aKeys
Next c
Now have all the keywords in a dictionary object
Add a new worksheet to store the list
Worksheets.Add
Cells(1, 1) = "Keyword"
Cells(1, 2) = "Count"
J = 1
For Each d In dTally.Keys
J = J + 1
Cells(J, 1) = d
Cells(J, 2) = dTally(d)
Next d
End Sub
اگر ماکرو روی سیستم شما کار نمی کند، ممکن است به این دلیل باشد که اکسل شی Dictionary را تشخیص نمی دهد. اگر مشکوک به این موضوع هستید، مطمئن شوید که کتابخانه Microsoft Scripting Runtime را در VBA فعال کرده اید. (این کار را در ویرایشگر ویژوال بیسیک با کلیک کردن بر روی ابزار | مراجع، مکان یابی کتابخانه، کلیک کردن بر روی کادر کنار آن و در نهایت کلیک روی OK انجام می دهید.)
به منظور استفاده از ماکرو، به سادگی سلول هایی را انتخاب کنید که حاوی کلمات کلیدی هستند (در مورد Martyns، سلول های ستون B هستند) و سپس ماکرو را اجرا کنید. یک کاربرگ جدید ایجاد می کند که کلمات کلیدی در ستون A و در ستون B تعداد دفعات تکرار هر کلمه کلیدی را فهرست می کند.
همانطور که نوشته شده است، ماکرو هیچ توجهی به حروف کلمات کلیدی ندارد. این بدان معناست که، برای مثال، "نارنجی" همان "نارنجی" است. اگر می خواهید فهرست کلمات کلیدی به حروف بزرگ و کوچک حساس باشد، باید عبارت LCase را حذف کنید. فقط یک بار در ماکرو استفاده می شود.
همچنین باید توجه داشته باشید که کلمات کلیدی به ترتیبی که در انتخابی که قبل از اجرای ماکرو انجام می دهید، در کاربرگ جدید فهرست شده اند. هنگامی که در کاربرگ قرار گرفتید، در صورت تمایل می توانید به راحتی کلمات کلیدی را مرتب کنید.