Word Cloud i Excel - Sådan oprettes Word Cloud med Excel VBA?

Indholdsfortegnelse

Word cloud er også kendt som Tag cloud in excel, som er en visuel repræsentation af tekst i excel i forskellige farver eller formater. I en word cloud defineres hyppigheden af ​​arbejdets repræsentation af ordets skrifttype, dette laves ved hjælp den smarte kunst og former udmærker sig.

Hvad er Word Cloud i Excel?

Word Cloud er samlingen af ​​ord, der skal vises i form af visualisering i Excel. Jeg håber, du har set nogle af de bedste dashboards med tal og kreative visualiseringer i excel. Dashboards spænder fra klassiske skrifttyper med attraktive farver med nogle super ting billeder med det. Et af de mærkelige dashboards, du skal have set med "Word Cloud." Det ligner et sofistikeret software-downloadet billede, men det downloades ikke hvor som helst, snarere oprettet med Excel VBA-kodning. Ja!!! Du har ret. Det er oprettet med VBA-kodning, og i denne artikel viser vi dig, hvordan du opretter en sådan ordsky med Excel.

Sådan oprettes en Word Cloud i Excel?

For at oprette en ordsky i Excel skal vi have data om ord, og hvad er de farver, vi har brug for til disse ord. Antag, at du opretter en ordsky med 30 excelformler. Så lav en liste over 30 excelformler i regnearket.

Skriv ovenstående formler til dit regneark i den første kolonne.

Når du først har skrevet ovenstående formelnavne i kolonne B, skal du anvende RANDBETWEEN-funktionen for alle de 30 formler som følger og holde bundværdien som 1 og den øverste værdi som 250.

Når dataene er klar, skal vi gå til Visual Basic Editor. Opret en brugerformular som nedenfor i VBA.

Nu skal vi konfigurere brugerformularen i VBA her. For hver knap skal vi skrive kode. Nedenfor er koden for hver knap.

Dobbeltklik på knappen "Forskellige farver" fra ovenstående brugerformular og tilføj nedenstående kode.

Kode:

Privat underkommandoButton1_Click () ColorCopeType = 0 Fjern mig 'Dette er for en anden farve Afslut sub

Dobbeltklik derefter på knappen Sortfarvet, og tilføj nedenstående kode.

Kode:

Privat underkommandoButton2_Click () ColorCopeType = 1 Fjern mig 'Dette er til sort farve Afslut sub

Tilsvarende tilføj nedenstående koder for alle de andre knapper.

Kode:

Privat sub CommandButton3_Click () ColorCopeType = 2 Unload Me 'Dette er til rød farve Afslut Sub Private Sub CommandButton4_Click () ColorCopeType = 3 Unload Me' Dette er til grøn farve Afslut Sub Private Sub CommandButton5_Click () ColorCopeType = 4 Unload Me 'Dette er til blå farve Afslut Sub Privat UnderkommandoButton6_Click () ColorCopeType = 5 Fjern mig 'Dette er til gul farve Afslut Under Privat UnderkommandoButton7_Click () ColorCopeType = 6 Aflad mig' Dette er for hvid farve Afslut Sub

Når vi først har konfigureret koden, skal vi deklarere variablen i modulet øverst.

Nu skal vi skrive en kode for at oprette en ordsky, som er lang. Nedenfor er koden.

Kode:

Sub word_cloud () Dim WordCloud Som Range Dim x As Integer, y As Integer Dim ColumnA Som Range, ColumnB As Range Dim WordCount As Integer Dim ColumCount As Integer, RowCount As Integer Dim WordColumn As Integer, WordRow As Integer Dim plotarea As Range, c As Range, d As Range, e As Range, f As Range, g As Range Dim z Som Integer, w As Integer Dim plotareah1 Som Range, plotareah2 As Range, dummy As Range Dim q As Integer, v As Integer Dim RedColor As Integer , GreenColor som heltal, BlueColor som heltal UserForm1.Vis WordCount = -1 Indstil WordCloud = Sheets ("Word Cloud"). Område ("B2: H7") ColumnCount = WordCloud.Columns.Count RowCount = WordCloud.Rows.Count for each Kolonne A i ark ("Formel liste"). Område ("A: A") Hvis kolonne A. værdi = ""Afslut derefter for ellers WordCount = WordCount + 1 Afslut hvis næste kolonneA Vælg sag WordCount sag WordCount = 0 til 20 WordColumn = WordCount / 5 sag WordCount = 21 til 40 WordColumn = WordCount / 6 sag WordCount = 41 til 40 WordColumn = WordCount / 8 sag WordCount = 80 til 9999 WordColumn = WordCount / 10 End Vælg WordRow = WordCount / WordColumn x = 1 Indstil c = Sheets ("Word Cloud"). Område ("A1") Offset ((RowCount / 2 - WordRow / 2), (ColumnCount / 2 - WordColumn / 2)) Indstil d = Ark ("Word Cloud"). Område ("A1"). Offset ((RowCount / 2 + WordRow / 2), (ColumnCount / 2 + WordColumn / 2)) Indstil plotarea = Ark ("Word Cloud"). Område (Ark ("Word Cloud"). Celler (c.Row, c.Column), Sheets ("Word Cloud"). Celler (d.Row, d.Column) ) For hver e In plotarea e.Value = Sheets ("Formula List"). Range ("A1 "). Offset (x, 0). Værdi e.Font.Size = 8 + Ark (" Formel liste "). Område (" A1 "). Offset (x, 0). Offset (0, 1). Værdi / 4 Vælg sag 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 Afslut Vælg e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 Hvis e.Value = "" Afslut derefter for afslutning Hvis næste e plotarea.Columns.AutoFit Afslut subFormel liste "). Område (" A1 "). Offset (x, 0). Offset (0, 1). Værdi / 4 Vælg sag ColorCopeType sag 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 = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Case 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End Vælg e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 Hvis e.Value = "" Afslut derefter til slutning, hvis næste e plotarea.Columns.AutoFit End SubFormel liste "). Område (" A1 "). Offset (x, 0). Offset (0, 1). Værdi / 4 Vælg sag ColorCopeType sag 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 = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 Case 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End Vælg e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 Hvis e.Value = "" Afslut derefter til slutning, hvis næste e plotarea.Columns.AutoFit End SubVærdi / 4 Vælg sag 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 BlueColor = 255 BlueColor = 255 255 Afslut valg e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 Hvis e.Value = "" Afslut derefter til slut hvis næste e plotarea. Kolonner. AutoFit End SubVærdi / 4 Vælg sag 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 BlueColor = 255 BlueColor = 255 255 Afslut valg e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 Hvis e.Value = "" Afslut derefter til slut hvis næste e plotarea. Kolonner. AutoFit End SubAutoFit End SubAutoFit End SubHorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 Hvis e.Value = "" Afslut derefter til afslutning, hvis næste e plotarea.Columns.AutoFit End SubHorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 Hvis e.Value = "" Afslut derefter til afslutning, hvis næste e plotarea.Columns.AutoFit End Sub

Kopier og indsæt ovenstående kode til dit modul. Arbejdsarket, der har en formelliste, skal have navnet "Formelliste". Indsæt derefter et nyt regneark i Excel og navngiv det som "Word Cloud."

I det nyindsatte ark skal du justere zoom til 40% og justere rækkehøjden til 85.

Så udfør nu koden i VBA ved at trykke på F5-knappen, du vil se den farve, der vælger brugerformularen.

Vælg farven efter dit ønske. Hvis du ikke vil have en enkelt farve, skal du vælge indstillingen "Forskellige farver." Vi får ordskyen i "Word Cloud" -arket.

Som dette ved hjælp af VBA-kodning kan vi oprette Word Cloud.

Interessante artikler...