Excel'de Kelime Bulutu - Excel VBA ile Kelime Bulutu Nasıl Oluşturulur?

Kelime bulutu, metnin farklı renk veya formatlarda excel olarak görsel bir temsili olan Excel'de Etiket bulutu olarak da bilinir, bir kelime bulutu içinde işin temsil sıklığı kelimenin yazı tipi ile belirlenir, bu kullanılarak yapılır. excel'in akıllı sanat ve şekiller özelliği.

Excel'de Kelime Bulutu nedir?

Kelime Bulutu, excel'de görselleştirme şeklinde gösterilecek kelimelerin koleksiyonudur. Umarım Excel'de sayılar ve yaratıcı görselleştirmeler içeren en iyi gösterge tablolarından bazılarını görmüşsünüzdür. Gösterge panoları, çekici renklere sahip şık yazı tiplerinden bazı süper görseller ile birlikte değişir. "Word Cloud" ile görmüş olmanız gereken tuhaf kontrol panellerinden biri . Gelişmiş bir yazılımla indirilmiş görüntü gibi görünüyor, ancak Excel VBA kodlamasıyla oluşturulmak yerine herhangi bir yerden indirilmiyor. Evet!!! Haklısın. VBA kodlaması ile oluşturulmuştur ve bu yazımızda sizlere excel ile böyle bir kelime bulutunun nasıl oluşturulacağını göstereceğiz.

Excel'de Kelime Bulutu Nasıl Oluşturulur?

Excel'de bir kelime bulutu oluşturmak için, kelime verilerine ve bu kelimeler için ihtiyacımız olan renklere ihtiyacımız var. 30 excel formülünden oluşan bir kelime bulutu oluşturduğunuzu varsayın. Çalışma sayfasında 30 excel formülünün bir listesini yapın.

Yukarıdaki formülleri ilk sütuna çalışma sayfanıza yazın.

Yukarıdaki formül adlarını B sütununa yazdıktan sonra, 30 formül için aşağıdaki gibi RANDBETWEEN işlevini uygulayın ve alt değeri 1 ve üst değeri 250 olarak tutun.

Veriler hazır olduğunda, Visual Basic Editor'a gitmemiz gerekiyor. VBA'da aşağıdaki gibi bir Kullanıcı Formu oluşturun.

Şimdi kullanıcı formunu burada VBA'da yapılandırmamız gerekiyor. Her buton için kod yazmamız gerekiyor. Her düğmenin kodu aşağıdadır.

Yukarıdaki kullanıcı formundan "Farklı Renkler" butonuna çift tıklayın ve aşağıdaki kodu ekleyin.

Kod:

Private Sub CommandButton1_Click () ColorCopeType = 0 Unload Me 'Bu farklı bir renk için End Sub

Ardından Siyah renkli butona çift tıklayın ve aşağıdaki kodu ekleyin.

Kod:

Özel Alt CommandButton2_Click () ColorCopeType = 1 Beni Kaldır 'Bu siyah renk içindir Son Alt

Benzer şekilde, diğer tüm düğmeler için aşağıdaki kodları ekleyin.

Kod:

Özel Alt CommandButton3_Click () ColorCopeType = 2 Beni Kaldır 'Bu kırmızı renk içindir End Sub Private Sub CommandButton4_Click () ColorCopeType = 3 Unload Me' Bu yeşil renk içindir End Sub Private Sub CommandButton5_Click () ColorCopeType = 4 Unload Me 'Bu, mavi renk End Sub Private Sub CommandButton6_Click () ColorCopeType = 5 Unload Me 'Bu sarı renk içindir End Sub Private Sub CommandButton7_Click () ColorCopeType = 6 Unload Me' Bu beyaz renk içindir End Sub

Kodu yapılandırdıktan sonra, modüldeki değişkeni en üstte tanımlamamız gerekir.

Şimdi uzun bir kelime bulutu oluşturmak için bir kod yazmamız gerekiyor. Kod aşağıdadır.

Kod:

Sub word_cloud () Dim WordCloud As Range Dim x As Integer, y As Integer Dim ColumnA as Range, ColumnB As Integer Dim Sütun Tamsayı As Integer, RowCount As Integer Dim WordColumn As Integer, WordRow As Integer Dim plotarea Aralık olarak Dim plotarea c Aralık olarak, d Aralık olarak, e Aralık olarak, f Aralık olarak, g Aralık olarak Dim z Tamsayı olarak, w Tamsayı Olarak Dim plotareah1 Aralık olarak, plotareah2 Aralık olarak, kukla Aralık olarak Dim q As Integer, v As Integer Dim RedColor As Integer , Tamsayı Olarak GreenColor, Tamsayı Olarak BlueColor UserForm1.Show WordCount = -1 Set WordCloud = Sheets ("Word Cloud"). Range ("B2: H7") ColumnCount = WordCloud.Columns.Count RowCount = WordCloud.Rows.Count E-Tablolarda Sütun A ("Formül Listesi"). Aralık ("A: A") SütunA.Değeri = "" iseSonra Başka Bir Kelime İçin Çık WordCount = WordCount + 1 Sonraki Sütun Varsa Bitir A Durum Seçin WordCount Durumunu Seçin WordCount = 0 ila 20 WordColumn = WordCount / 5 Durum WordCount = 21 ila 40 WordColumn = WordCount / 6 Durum WordCount = 41 ila 40 WordColumn = WordCount / 8 Vaka WordCount = 80 ila 9999 WordColumn = WordCount / 10 End Seçme WordRow = WordCount / WordColumn x = 1 Set c = Sheets ("Word Cloud"). Aralık ("A1"). Offset ((RowCount / 2 - WordRow / 2), (ColumnCount / 2 - WordColumn / 2)) Set d = Sheets ("Word Cloud"). Range ("A1"). Offset ((RowCount / 2 + WordRow / 2), (ColumnCount / 2 + WordColumn / 2)) Plotarea = Sheets ("Word Cloud") ayarlayın. Range (Sheets ("Word Cloud"). Hücreler (c.Row, c.Column), Sheets ("Word Cloud"). Hücreler (d.Row, d.Column) ) Her e In plotarea için e.Value = Sheets ("Formula List"). Range ("A1 "). Ofset (x, 0) .Değer e.Font.Size = 8 + Sayfa (" Formül Listesi "). Aralık (" A1 "). Offset (x, 0) .Offset (0, 1) .Değer / 4 Case ColorCopeType Case 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 Case 1 RedColor = 0 GreenColor = 0 BlueColor = 0 Case 2 RedColor = 255 GreenColor = 0 BlueColor = 0 Case 3 RedColor = 0 GreenColor = 255 BlueColor = 0 Case 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Case 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End Select e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Sonra Sonunda Son İçin Çık ve plotarea.Columns.AutoFit SubFormül Listesi "). Aralık (" A1 "). Offset (x, 0) .Offset (0, 1) .Value / 4 Case ColorCopeType Case 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 Case 1 RedColor = 0 GreenColor = 0 BlueColor = 0 Case 2 RedColor = 255 GreenColor = 0 BlueColor = 0 Case 3 RedColor = 0 GreenColor = 255 BlueColor = 0 Case 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Case 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End Select e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 Eğer e.Value = "" Sonra Sonunda Sonlandırmak İçin Çıkın e plotarea.Columns.AutoFit End SubFormül Listesi "). Aralık (" A1 "). Offset (x, 0) .Offset (0, 1) .Value / 4 Case ColorCopeType Case 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 Case 1 RedColor = 0 GreenColor = 0 BlueColor = 0 Case 2 RedColor = 255 GreenColor = 0 BlueColor = 0 Case 3 RedColor = 0 GreenColor = 255 BlueColor = 0 Case 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Case 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End Select e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 Eğer e.Value = "" Sonra Sonunda Sonlandırmak İçin Çıkın e plotarea.Columns.AutoFit End SubDeğer / 4 Case ColorCopeType Case 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 Case 1 RedColor = 0 GreenColor = 0 BlueColor = 0 Case 2 RedColor = 255 GreenColor = 0 BlueColor = 0 Case 3 RedColor = 0 GreenColor = 255 BlueColor = 0 Case 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Case 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End Select e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Sonra Sonunda Son İçin Çık ve plotarea.Columns. AutoFit End SubDeğer / 4 Case ColorCopeType Case 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 Case 1 RedColor = 0 GreenColor = 0 BlueColor = 0 Case 2 RedColor = 255 GreenColor = 0 BlueColor = 0 Case 3 RedColor = 0 GreenColor = 255 BlueColor = 0 Case 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Case 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End Select e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Sonra Sonunda Son İçin Çık ve plotarea.Columns. AutoFit End SubAutoFit End SubAutoFit End SubHorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Sonra Sonunda Sonunda Çıkın e plotarea.Columns.AutoFit End SubHorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Sonra Sonunda Sonunda Çıkın e plotarea.Columns.AutoFit End Sub

Yukarıdaki kodu kopyalayıp modülünüze yapıştırın. Formül listesi olan çalışma sayfası "Formül Listesi" olarak adlandırılmalıdır. Ardından excel'e yeni bir çalışma sayfası ekleyin ve bunu "Word Cloud" olarak adlandırın.

Yeni eklenen sayfada, Yakınlaştırmayı% 40'a ve satır yüksekliğini 85'e ayarlayın.

Öyleyse şimdi F5 butonuna basarak kodu VBA'da yürütün, kullanıcı formunu seçen rengi göreceksiniz.

İsteğinize göre rengi seçin. Tek bir renk istemiyorsanız, "Farklı Renkler" seçeneğini belirleyin. Kelime bulutu "Kelime Bulutu" sayfasında alacağız.

Bunun gibi VBA kodlamasını kullanarak Word Cloud oluşturabiliriz.

Ilginç makaleler...