سحابة الكلمات في Excel | كيفية إنشاء سحابة Word باستخدام Excel VBA؟
تُعرف سحابة الكلمات أيضًا باسم سحابة العلامات في Excel وهي تمثيل مرئي للنص في Excel بألوان أو تنسيقات مختلفة ، في سحابة الكلمات ، يتم تحديد تكرار تمثيل العمل بخط الكلمة ، ويتم ذلك باستخدام ميزة الفنون والأشكال الذكية في Excel.
ما هو Word Cloud في Excel؟
Word Cloud عبارة عن مجموعة من الكلمات التي يتم عرضها في شكل تصور في Excel. أتمنى أن تكون قد شاهدت بعضًا من أفضل لوحات المعلومات التي تحتوي على أرقام وتصورات إبداعية في Excel. تتراوح لوحات المعلومات من خطوط أنيقة ذات ألوان جذابة مع بعض الصور فائقة الجودة بها. إحدى لوحات المعلومات الفريدة التي يجب أن تكون قد شاهدتها باستخدام "Word Cloud" . تبدو كصورة تم تنزيلها بواسطة برنامج متطور ولكن لا يتم تنزيلها من أي مكان بدلاً من إنشاؤها باستخدام ترميز Excel VBA. نعم!!! أنت محق في أنه تم إنشاؤه بواسطة ترميز VBA وفي هذه المقالة ، سنوضح لك كيفية إنشاء سحابة الكلمات باستخدام Excel.
كيفية إنشاء سحابة Word في Excel؟
يمكنك تنزيل قالب Word Cloud Excel هذا هنا - قالب Word Cloud Excelلإنشاء سحابة كلمات في Excel ، نحتاج إلى بيانات الكلمات وما هي الألوان التي نحتاجها لتلك الكلمات. افترض أنك تقوم بإنشاء سحابة كلمات تتكون من 30 صيغة إكسل. لذا قم بعمل قائمة من 30 صيغة excel في ورقة العمل.
اكتب الصيغ أعلاه في ورقة العمل الخاصة بك في العمود الأول.
بمجرد كتابة أسماء الصيغ أعلاه في العمود B ، قم بتطبيق وظيفة RANDBETWEEN لجميع الصيغ الثلاثين على النحو التالي واحتفظ بالقيمة السفلية كـ 1 والقيمة الأعلى كـ 250.
بمجرد أن تصبح البيانات جاهزة ، نحتاج إلى التوجه إلى محرر Visual Basic. قم بإنشاء نموذج مستخدم كما هو موضح أدناه في VBA.
نحتاج الآن إلى تكوين نموذج المستخدم في VBA ، وهنا نحتاج إلى كتابة التعليمات البرمجية لكل زر. يوجد أدناه رمز كل زر.
انقر نقرًا مزدوجًا فوق الزر "ألوان مختلفة" من نموذج المستخدم أعلاه وأضف الكود أدناه.
رمز:
CommandButton1_Click () ColorCopeType = 0 Unload Me 'This is for different Sub CommandButton1_Click () ColorCopeType = 0 Unload Me هذا لون مختلف End Sub
ثم انقر نقرًا مزدوجًا فوق الزر الملون الأسود وأضف الكود أدناه.
رمز:
CommandButton2_Click () الأمر الفرعي الخاص ColorCopeType = 1 Unload Me 'This is for black color End Sub
وبالمثل ، بالنسبة لجميع الأزرار الأخرى ، أضف الرموز أدناه.
رمز:
الأمر الفرعي الخاص الزر 3_نقر () ColorCopeType = 2 Unload Me 'هذا للون الأحمر End Sub Private Sub CommandButton4_Click () ColorCopeType = 3 Unload Me' هذا للون الأخضر End Sub Private Sub CommandButton5_Click () ColorCopeType = 4 Unload Me 'This is for اللون الأزرق End Sub Private Sub CommandButton6_Click () ColorCopeType = 5 Unload Me 'هذا للون الأصفر End Sub Private Sub CommandButton7_Click () ColorCopeType = 6 Unload Me' هذا للون الأبيض End Sub
بمجرد تكوين الكود ، نحتاج إلى الإعلان عن المتغير في الوحدة النمطية في الأعلى.
نحتاج الآن إلى كتابة رمز لإنشاء سحابة كلمات طويلة. يوجد أدناه الرمز.
رمز:
Sub word_cloud () خافت WordCloud كنطاق خافت x كعدد صحيح ، y كعمود خافت عدد صحيح A كنطاق ، عمود B كمجموعة خافت عدد الكلمات كعدد صحيح خافت كعدد صحيح ، عدد الصفوف كعمود خافت صحيح كعدد صحيح ، WordRow كمنطقة عدد صحيح Dimotarea كنطاق ، ج كنطاق ، d كنطاق ، e كنطاق ، f كنطاق ، g كمدى Dim z As Integer ، w كـ عدد صحيح Dim plotareah1 كنطاق ، plotareah2 كنطاق ، dummy As Range ، Dim q As Integer ، v As Integer Dim RedColor As Integer ، GreenColor As Integer ، BlueColor As Integer UserForm1.Show WordCount = -1 تعيين WordCloud = Sheets ("Word Cloud"). النطاق ("B2: H7") ColumnCount = WordCloud.Columns.Count RowCount = WordCloud.Rows.Count لكل منها ColumnA In Sheets ("قائمة الصيغة"). النطاق ("A: A") إذا كان ColumnA.Value = ""ثم قم بالخروج من أجل Else WordCount = WordCount + 1 End إذا كان العمود التالي A حدد الحالة WordCount Case WordCount = 0 إلى 20 WordColumn = WordCount / 5 Case WordCount = 21 إلى 40 WordColumn = WordCount / 6 Case WordCount = 41 إلى 40 WordCount = WordCount / 8 Case WordCount = 80 إلى 9999 WordColumn = WordCount / 10 End حدد WordRow = WordCount / WordColumn x = 1 Set c = Sheets ("Word Cloud"). Range ("A1"). Offset ((RowCount / 2 - WordRow / 2)، (ColumnCount / 2 - WordColumn / 2)) مجموعة d = Sheets ("Word Cloud"). النطاق ("A1"). الإزاحة ((RowCount / 2 + WordRow / 2) ، (ColumnCount / 2 + WordColumn / 2)) Set plotarea = Sheets ("Word Cloud"). النطاق (Sheets ("Word Cloud"). الخلايا (c.Row، c.Column) ، Sheets ("Word Cloud"). الخلايا (d.Row، d.Column) ) لكل e في plotarea e.Value = Sheets ("قائمة المعادلات"). Range ("A1 "). Offset (x، 0) .Value e.Font.Size = 8 + Sheets (" Formula List "). Range (" A1 "). Offset (x، 0). Offset (0، 1) .Value / 4 حدد حالة ColorCopeType الحالة 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 حالة 1 RedColor = 0 GreenColor = 0 BlueColor = 0 Case 2 RedColor = 255 GreenColor = 0 BlueColor = 0 حالة 3 RedColor = 0 GreenColor = 255 BlueColor = 0 حالة 4 RedColor = 0 GreenColor = 0 BlueColor = 255 Case 5 RedColor = 255 GreenColor = 255 BlueColor = 100 حالة 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End حدد e.Font.Color = RGB (RedColor ، GreenColor ، BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 إذا كانت e.Value = "" ثم اخرج للنهاية إذا التالي e plotarea.Columns.AutoFit End Subقائمة الصيغة "). النطاق (" A1 "). الإزاحة (س ، 0). الإزاحة (0 ، 1). القيمة / 4 تحديد الحالة ColorCopeType الحالة 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 حالة 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 RedColor = 255 GreenColor = 255 BlueColor = 100 حالة 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End حدد e.Font.Color = RGB (RedColor ، GreenColor ، BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 إذا كانت e.Value = "" ثم اخرج من أجل النهاية إذا التالي e plotarea.Columns.AutoFit End Subقائمة الصيغة "). النطاق (" A1 "). الإزاحة (س ، 0). الإزاحة (0 ، 1). القيمة / 4 تحديد الحالة ColorCopeType الحالة 0 RedColor = (255 * Rnd) + 1 GreenColor = (255 * Rnd) + 1 BlueColor = (255 * Rnd) + 1 حالة 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 RedColor = 255 GreenColor = 255 BlueColor = 100 حالة 6 RedColor = 255 GreenColor = 255 BlueColor = 255 End حدد e.Font.Color = RGB (RedColor ، GreenColor ، BlueColor) e.HorizontalAlignment = xlCenter e. VerticalAlignment = xlCenter x = x + 1 If e.Value = "" ثم اخرج للنهاية إذا التالي e plotarea.Columns.AutoFit End Subالقيمة / 4 حدد الحالة ColorCopeType الحالة 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 RedColor = 0 GreenColor = 255 BlueColor = 0 حالة 4 RedColor = 0 GreenColor = 0 BlueColor = 255 حالة 5 RedColor = 255 GreenColor = 255 BlueColor = 100 حالة 6 RedColor = 255 GreenColor = 255 BlueColor = 255 نهاية حدد e.Font.Color = RGB (RedColor ، GreenColor ، BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 إذا كانت e.Value = "" ثم اخرج من أجل النهاية إذا التالي e plotarea.Columns. AutoFit End Subالقيمة / 4 حدد الحالة ColorCopeType الحالة 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 RedColor = 0 GreenColor = 255 BlueColor = 0 حالة 4 RedColor = 0 GreenColor = 0 BlueColor = 255 حالة 5 RedColor = 255 GreenColor = 255 BlueColor = 100 حالة 6 RedColor = 255 GreenColor = 255 BlueColor = 255 نهاية حدد e.Font.Color = RGB (RedColor ، GreenColor ، BlueColor) e.HorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 إذا كانت e.Value = "" ثم اخرج من أجل النهاية إذا التالي e plotarea.Columns. AutoFit End SubAutoFit End SubAutoFit End SubHorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" ثم اخرج من أجل End If Next e plotarea.Columns.AutoFit End SubHorizontalAlignment = xlCenter e.VerticalAlignment = xlCenter x = x + 1 If e.Value = "" ثم اخرج من أجل End If Next e plotarea.Columns.AutoFit End Sub
انسخ والصق الكود أعلاه في وحدتك. يجب تسمية ورقة العمل التي تحتوي على قائمة معادلات باسم "قائمة المعادلات". ثم أدخل ورقة عمل جديدة في برنامج excel وأطلق عليها اسم "Word Cloud".
في الورقة المُدرجة حديثًا ، اضبط التكبير على 40٪ واضبط ارتفاع الصف على 85.
لذلك ، قم الآن بتنفيذ الكود في VBA بالضغط على الزر F5 ، سترى نموذج المستخدم الذي يختار اللون.
اختر اللون حسب رغبتك ، إذا كنت لا تريد لونًا واحدًا فاختر خيار "ألوان مختلفة". سنحصل على سحابة الكلمات في ورقة "Word Cloud".
مثل هذا باستخدام ترميز VBA ، يمكننا إنشاء Word Cloud.