Szófelhő az Excel-ben - Hogyan készítsünk Word Cloud-ot az Excel VBA segítségével?

A szófelhőt más néven Tag-felhőnek is nevezik, amely az excel szövegének vizuális ábrázolása különböző színekben vagy formátumokban, egy szófelhőben a munka ábrázolásának gyakoriságát a szó betűtípusa határozza meg, ez a az intelligens művészet és formák jellemzője az excelben.

Mi az a Word Cloud az Excelben?

A Word Cloud a szavak gyűjteménye, amelyet megjeleníteni kell az Excel megjelenítésében. Remélem, hogy látta a legjobb irányítópultokat számokkal és kreatív megjelenítéssel az excelben. Az irányítópultok az előkelő betűtípusoktól vonzó színekig terjednek, néhány szuper cucc képpel együtt. Az egyik különös irányítópult, amelyet biztosan látott a „Word Cloud” alkalmazással. Úgy néz ki, mint egy kifinomult szoftver által letöltött kép, de nem tölthető le bárhonnan, hanem inkább Excel VBA kódolással lett létrehozva. Igen!!! Igazad van. VBA kódolással hozták létre, és ebben a cikkben megmutatjuk, hogyan hozhat létre ilyen szófelhőt az excellel.

Hogyan készítsünk Word Cloud-ot az Excelben?

Szófelhő létrehozásához az excelben rendelkeznünk kell a szavakra vonatkozó adatokkal, és milyen színekre van szükségünk ezekhez a szavakhoz. Tegyük fel, hogy 30 Excel képletből álló szófelhőt hoz létre. Tehát készítsen egy listát 30 excel képletről a munkalapon.

Írja be a fenti képleteket a munkalapjára az első oszlopba.

Miután megírta a fenti képletneveket a B oszlopba, alkalmazza a RANDBETWEEN függvényt mind a 30 képletre az alábbiak szerint, és az alsó értéket tartsa 1-nek, a felső értékét pedig 250-nek.

Miután az adatok elkészültek, a Visual Basic Editorba kell mennünk. Hozzon létre egy felhasználói űrlapot az alábbiak szerint a VBA-ban.

Most itt kell konfigurálnunk a felhasználói űrlapot a VBA-ban. Minden gombhoz kódot kell írnunk. Az alábbiakban található az egyes gombok kódja.

Kattintson duplán a fenti Felhasználói űrlapon található „Különböző színek” gombra, és adja hozzá az alábbi kódot.

Kód:

Private Sub CommandButton1_Click () ColorCopeType = 0 Unload Me 'Ez egy másik színű End Sub

Ezután kattintson duplán a Fekete színű gombra, és adja hozzá az alábbi kódot.

Kód:

Privát al CommandButton2_Click () ColorCopeType = 1 Unload Me 'Ez a fekete szín End End

Hasonlóképpen, az összes többi gombhoz adja hozzá az alábbi kódokat.

Kód:

Privát al CommandButton3_Click () ColorCopeType = 2 Távolítson el engem 'Ez a piros színhez tartozik Végső al Privát alparancsButton4_Click () ColorCopeType = 3 Távolítson el engem' Ez a zöld színű End Sub Privát al CommandButton5_Click () ColorCopeType = 4 Távolítson el engem ' kék szín End Sub Private Sub CommandButton6_Click () ColorCopeType = 5 Unload Me 'Ez a sárga szín End Sub Private Sub CommandButton7_Click () ColorCopeType = 6 Unload Me' Ez a fehér szín End Sub

Miután konfiguráltuk a kódot, deklarálnunk kell a változót a tetején lévő modulban.

Most meg kell írnunk egy kódot egy szófelhő létrehozásához, amely hosszú. Az alábbiakban található a kód.

Kód:

Sub word_cloud () Dim WordCloud As Range Dim x As Integer, y As Integer Dim ColumnA as Range, O oszlop B Range 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 As Integer, w As Integ Dim Dimplareah1 As Range, plotareah2 As Range, dummy As Range Dim q As Integer, v As Integer Dim RedColor As Integer , GreenColor egész számként, BlueColor egész számként UserForm1.Show WordCount = -1 WordCloud = Sheets ("Word Cloud") beállítása. Range ("B2: H7") ColumnCount = WordCloud.Columns.Count RowCount = WordCloud.Rows. Count mindegyikhez A oszlop A táblázatokban ("képletlista"). Tartomány ("A: A") Ha oszlopA.Value = ""Ezután lépjen ki a következőre: WordCount = WordCount + 1 Vége, ha a következő oszlopA Válassza ki az esetet WordCount Case WordCount = 0-20 WordColumn = WordCount / 5 Case WordCount = 21-40 WordColumn = WordCount / 6 Case WordCount = 41-40 WordColumn = WordCount / 8 Case WordCount = 80 - 9999 WordColumn = WordCount / 10 End Select WordRow = WordCount / WordColumn x = 1 Set c = Sheets ("Word Cloud"). Range ("A1"). Offset (((RowCount / 2 - WordRow / 2), (ColumnCount / 2 - WordColumn / 2)) Állítsa be a d = Sheets ("Word Cloud"). Tartomány ("A1"). Offset ((RowCount / 2 + WordRow / 2), (ColumnCount / 2 + WordColumn / 2)) Set plotarea = Sheets ("Word Cloud"). Tartomány (Sheets ("Word Cloud"). Cellák (c.Row, c.Column), Sheets ("Word Cloud"). Cellák (d.Row, d.Column) ) Minden e-hez a plotarea-ban e.Value = Sheets ("Képletlista").A1 "). Eltolás (x, 0). Érték e.Font.Size = 8 + Táblázatok (" Képletlista "). Tartomány (" A1 "). Eltolás (x, 0). Eltolás (0, 1). Érték / 4 Válasszon Case ColorCopeType esetet 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 3. eset RedColor = 0 GreenColor = 255 BlueColor = 0 4. eset RedColor = 0 GreenColor = 0 BlueColor = 255 5. eset RedColor = 255 GreenColor = 255 BlueColor = 100 6. eset RedColor = 255 GreenColor = 255 BlueColor = 255 Vége Válassza ki az e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Exit For End If Next e plotarea.Columns.AutoFit End SubKépletlista "). Tartomány (" A1 "). Eltolás (x, 0). Eltolás (0, 1). Érték / 4 Kiválasztja a Case ColorCopeType esetet 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 5. eset RedColor = 255 GreenColor = 255 BlueColor = 100 6. eset RedColor = 255 GreenColor = 255 BlueColor = 255 End Select e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 Ha e.Value = "" Akkor kilép a Végre Ha Következő e plotarea.Columns.AutoFit End SubKépletlista "). Tartomány (" A1 "). Eltolás (x, 0). Eltolás (0, 1). Érték / 4 Kiválasztja a Case ColorCopeType esetet 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 5. eset RedColor = 255 GreenColor = 255 BlueColor = 100 6. eset RedColor = 255 GreenColor = 255 BlueColor = 255 End Select e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 Ha e.Value = "" Akkor kilép a Végre Ha Következő e plotarea.Columns.AutoFit End SubÉrték / 4 Válasszon Case ColorCopeType esetet 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 3. eset RedColor = 0 GreenColor = 255 BlueColor = 0 4. eset RedColor = 0 GreenColor = 0 BlueColor = 255 5. eset RedColor = 255 GreenColor = 255 BlueColor = 100 6. eset RedColor = 255 GreenColor = 255 BlueColor = 255 Vége Válassza ki az e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" Akkor Kilépés a végért Ha a következő e plotarea.Columns. AutoFit End SubÉrték / 4 Válasszon Case ColorCopeType esetet 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 3. eset RedColor = 0 GreenColor = 255 BlueColor = 0 4. eset RedColor = 0 GreenColor = 0 BlueColor = 255 5. eset RedColor = 255 GreenColor = 255 BlueColor = 100 6. eset RedColor = 255 GreenColor = 255 BlueColor = 255 Vége Válassza ki az e.Font.Color = RGB (RedColor, GreenColor, BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 Ha e.Value = "" Akkor kilép a végéből, ha következő 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 Sub SubHorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" then Exit For End If Next e plotarea.Columns.AutoFit End Sub Sub

Másolja és illessze be a fenti kódot a moduljába. A képlettel rendelkező munkalapot „Képletlista” néven kell megnevezni. Ezután helyezzen be egy új munkalapot az Excelbe, és nevezze el „Word Cloud” néven.

Az újonnan behelyezett lapon állítsa a Zoom értéket 40% -ra, a sor magasságát pedig 85-re.

Tehát most hajtsa végre a kódot a VBA-ban az F5 gomb megnyomásával, és megjelenik a színválasztó felhasználói űrlap.

Válassza ki a kívánt színnek megfelelő színt. Ha nem akar egy színt, akkor válassza a „Különböző színek” lehetőséget. A szófelhőt a „Szófelhő” lapon kapjuk meg.

Így a VBA kódolással létrehozhatjuk a Word Cloud alkalmazást.

érdekes cikkek...