Chmura słów w programie Excel - Jak stworzyć Word Cloud za pomocą Excel VBA?

Chmura słów jest również znana jako chmura tagów w programie Excel, która jest wizualną reprezentacją tekstu w programie Excel w różnych kolorach lub formatach, w chmurze słów częstotliwość reprezentacji pracy jest określona czcionką słowa, odbywa się to za pomocą inteligentna grafika i kształty w programie Excel.

Co to jest Word Cloud w programie Excel?

Word Cloud to zbiór słów do pokazania w formie wizualizacji w programie Excel. Mam nadzieję, że widziałeś jedne z najlepszych pulpitów nawigacyjnych z liczbami i kreatywnymi wizualizacjami w programie Excel. Pulpity nawigacyjne są zróżnicowane - od klasycznych czcionek o atrakcyjnych kolorach z kilkoma super obrazami. Jeden z osobliwych pulpitów nawigacyjnych, który musiałeś widzieć dzięki „Word Cloud”. Wygląda jak wyrafinowany pobrany obraz oprogramowania, ale nie jest pobierany z dowolnego miejsca, a raczej utworzony za pomocą kodowania Excel VBA. Tak!!! Masz rację. Został stworzony za pomocą kodowania VBA, aw tym artykule pokażemy, jak stworzyć taką chmurę słów w programie Excel.

Jak stworzyć Word Cloud w Excelu?

Aby stworzyć chmurę słów w programie Excel, musimy mieć dane słów i jakich kolorów potrzebujemy dla tych słów. Załóżmy, że tworzysz chmurę słów zawierającą 30 formuł programu Excel. Zrób więc listę 30 formuł programu Excel w arkuszu.

Napisz powyższe formuły do ​​arkusza w pierwszej kolumnie.

Po zapisaniu powyższych nazw formuł w kolumnie B zastosuj funkcję RANDBETWEEN dla wszystkich 30 formuł w następujący sposób i zachowaj dolną wartość 1, a górną 250.

Gdy dane są gotowe, musimy udać się do Edytora Visual Basic. Utwórz formularz użytkownika, jak poniżej w VBA.

Teraz musimy skonfigurować formularz użytkownika w VBA, tutaj. Dla każdego przycisku musimy napisać kod. Poniżej znajduje się kod dla każdego przycisku.

Kliknij dwukrotnie przycisk „Różne kolory” w powyższym formularzu użytkownika i dodaj poniższy kod.

Kod:

Private Sub CommandButton1_Click () ColorCopeType = 0 Unload Me 'To jest dla innego koloru End Sub

Następnie kliknij dwukrotnie przycisk w kolorze czarnym i dodaj poniższy kod.

Kod:

Private Sub CommandButton2_Click () ColorCopeType = 1 Unload Me 'To jest dla koloru czarnego End Sub

Podobnie, dla wszystkich pozostałych przycisków, dodaj poniższe kody.

Kod:

Private Sub CommandButton3_Click () ColorCopeType = 2 Unload Me 'To jest dla koloru czerwonego End Sub Private Sub CommandButton4_Click () ColorCopeType = 3 Unload Me' To jest dla koloru zielonego End Sub Private Sub CommandButton5_Click () ColorCopeType = 4 Unload Me 'To jest dla kolor niebieski End Sub Private Sub CommandButton6_Click () ColorCopeType = 5 Unload Me 'To jest dla koloru żółtego End Sub Private Sub CommandButton7_Click () ColorCopeType = 6 Unload Me' To jest dla koloru białego End Sub

Po skonfigurowaniu kodu musimy zadeklarować zmienną w module na górze.

Teraz musimy napisać kod, aby utworzyć chmurę słów, co jest długotrwałe. Poniżej znajduje się kod.

Kod:

Sub word_cloud () Dim WordCloud As Range Dim x As Integer, y As Integer Dim ColumnA As Range, ColumnB As Range Dim WordCount As Integer Dim ColumCount As Integer, RowCount As Integer Dim WordColumn As Integer, WordRow As Integer Dim plot area As Range, c As Range, d As Range, e As Range, f As Range, g As Range Dim z As Integer, w As Integer Dim plotareah1 As Range, plotareah2 As Range, dummy As Range Dim q As Integer, v As Integer Dim RedColor As Integer , GreenColor As Integer, BlueColor As Integer UserForm1.Show WordCount = -1 Ustaw WordCloud = Arkusze („Word Cloud”). Range („B2: H7”) ColumnCount = WordCloud.Columns.Count RowCount = WordCloud.Rows.Count For Each KolumnaA w Arkuszach („Lista formuł”). Zakres („A: A”) Jeśli KolumnaA.Value = „”Następnie zamknij W innym przypadku WordCount = WordCount + 1 End If Next ColumnA Wybierz wielkość liter WordCount Case WordCount = 0 To 20 WordColumn = WordCount / 5 Case WordCount = 21 do 40 WordColumn = WordCount / 6 Case WordColumn = 41 do 40 WordColumn = WordCount / 8 Case WordCount = 80 do 9999 WordColumn = WordCount / 10 End Select WordRow = WordCount / WordColumn x = 1 Ustaw c = Arkusze („Word Cloud”). Zakres („A1”). Przesunięcie ((RowCount / 2 - WordRow / 2), (ColumnCount / 2 - WordColumn / 2)) Set d = Sheets ("Word Cloud"). Range ("A1"). Offset ((RowCount / 2 + WordRow / 2), (ColumnCount / 2 + WordColumn / 2)) Ustaw obszar plot = Arkusze („Chmura słowa”). Zakres (Arkusze („Chmura słowa”). Komórki (wiersz, kolumna), Arkusze („Chmura słów”). Komórki (wiersz, kolumna) ) For Each e In plotarea e.Value = Sheets ("Formula List"). Range ("A1 "). Przesunięcie (x, 0). Wartość e.Font.Size = 8 + Arkusze (" Lista formuł "). Zakres (" A1 "). Przesunięcie (x, 0). Przesunięcie (0, 1). Wartość / 4 Wybierz wielkość liter ColorCopeType Wielkość przypadku 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 RedColor = 0 GreenColor = 0 BlueColor = 255 Przypadek 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Przypadek 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 Jeśli e.Value = "" Następnie zakończ, aby zakończyć, jeśli następny e plotarea.Columns.AutoFit Napis końcowyLista formuł ”). Zakres („ A1 ”). Przesunięcie (x, 0). Przesunięcie (0, 1). Wartość / 4 Wybierz wielkość liter ColorCopeType Przypadek 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 Case 1 RedColor = 0 GreenColor = 0 BlueColor = 0 Przypadek 2 RedColor = 255 GreenColor = 0 BlueColor = 0 Przypadek 3 RedColor = 0 GreenColor = 255 BlueColor = 0 Przypadek 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Case 6 RedColor = 255 GreenColor = 255 BlueColor = 255 Koniec Wybierz e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Then Exit For End If Next e plotarea.Columns.AutoFit End SubLista formuł ”). Zakres („ A1 ”). Przesunięcie (x, 0). Przesunięcie (0, 1). Wartość / 4 Wybierz wielkość liter ColorCopeType Przypadek 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 Case 1 RedColor = 0 GreenColor = 0 BlueColor = 0 Przypadek 2 RedColor = 255 GreenColor = 0 BlueColor = 0 Przypadek 3 RedColor = 0 GreenColor = 255 BlueColor = 0 Przypadek 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Case 6 RedColor = 255 GreenColor = 255 BlueColor = 255 Koniec Wybierz e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Then Exit For End If Next e plotarea.Columns.AutoFit End SubWartość / 4 Wybierz wielkość liter ColorCopeType Wielkość przypadku 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 Przypadek 3 RedColor = 0 GreenColor = 255 BlueColor = 0 Przypadek 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Przypadek 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Przypadek 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 Jeśli e.Value = "" Następnie zakończ, aby zakończyć, jeśli następny e plotarea.Columns. AutoFit End SubWartość / 4 Wybierz wielkość liter ColorCopeType Wielkość przypadku 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 Przypadek 3 RedColor = 0 GreenColor = 255 BlueColor = 0 Przypadek 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Przypadek 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Przypadek 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 Jeśli e.Value = "" Następnie zakończ, aby zakończyć, jeśli następny e plotarea.Columns. AutoFit End SubAutoFit End SubAutoFit End SubHorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Then Exit For End If Next e plotarea.Columns.AutoFit End SubHorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Then Exit For End If Next e plotarea.Columns.AutoFit End Sub

Skopiuj i wklej powyższy kod do swojego modułu. Arkusz z listą formuł powinien mieć nazwę „Lista formuł”. Następnie wstaw nowy arkusz do programu Excel i nazwij go „Word Cloud”.

W nowo wstawionym arkuszu ustaw Zoom na 40% i ustaw wysokość wiersza na 85.

Więc teraz wykonaj kod w VBA, naciskając przycisk F5, zobaczysz formularz wyboru koloru.

Wybierz kolor według własnego uznania. Jeśli nie chcesz jednego koloru, wybierz opcję „Różne kolory”. Chmurę słów otrzymamy w arkuszu „Word Cloud”.

W ten sposób, używając kodowania VBA, możemy stworzyć Word Cloud.

Interesujące artykuły...