מיין נתונים באופן אקראי ב- Excel VBA - פקודות מאקרו קלות של Excel

תוכן העניינים

להלן נבחן תוכנית ב Excel VBA זֶה ממיין נתונים באופן אקראי (בדוגמה זו ממיין שמות באופן אקראי).

מַצָב:

1. ראשית, אנו מכריזים על ארבעה משתנים. משתנה אחד מסוג String שאנו קוראים לו TempString, משתנה אחד מסוג Integer אנו קוראים לו TempInteger, משתנה אחד מסוג מסוג Integer שאנו קוראים לו i, ומשתנה אחד מסוג מסוג Integer אנו קוראים לו j.

Dim tempString As String, tempInteger As Integer, i As Integer, j As Integer

2. אנו כותבים 5 מספרים אקראיים לעמודה B (אחד לכל שם). לשם כך אנו משתמשים בפונקציית גליון העבודה RandBetween.

עבור i = 1 עד 5
תאים (i, 2) .Value = גליון עבודהFunction.RandBetween (0, 1000)
הבא i

התוצאה עד כה:

נשתמש במספרים שלצד כל שם למיון השמות. השם עם המספר הנמוך ביותר ראשון, השם עם המספר השני הנמוך ביותר, שני וכו '.

3. אנו מתחילים לולאה כפולה.

עבור i = 1 עד 5
עבור j = i + 1 עד 5

4. הוסף את שורת הקוד הבאה:

אם תאים (j, 2). ערך <תאים (i, 2). ערך לאחר מכן

דוגמה: עבור i = 1 ו- j = 2, וונדי וריצ'רד מושווים. מכיוון שלריצ'רד יש מספר נמוך יותר, אנו מחליפים את וונדי וריצ'רד. ריצ'רד נמצא כעת בתפקיד הראשון. עבור i = 1 ו- j = 3, ריצ'רד וג'וסט יושוו. לג'וסט מספר גבוה יותר ולכן שום דבר לא קורה. בדרך זו, Excel VBA מקבל את השם עם המספר הנמוך ביותר במיקום הראשון. עבור i = 2, Excel VBA מקבל את השם עם המספר השני הנמוך ביותר במיקום השני וכו '.

5. אם זה נכון, נחליף את השמות.

tempString = תאים (i, 1). ערך
תאים (i, 1). ערך = תאים (j, 1). ערך
תאים (j, 1) .Value = tempString

6. ואנחנו מחליפים את המספרים.

tempInteger = תאים (i, 2). ערך
תאים (i, 2). ערך = תאים (j, 2). ערך
תאים (j, 2). ערך = tempInteger

7. אל תשכח לסגור את הצהרת ה- If.

סוף אם

8. אל תשכח לסגור את שתי הלולאות.

 י הבא
הבא i

9. בדוק את התוכנית.

תוֹצָאָה:

הערה: אתה יכול להוסיף שורה שמוחקת את המספרים בעמודה B. עוד יותר נחמד למקם את המספרים של כל שם במערך, כך שלא יוצבו מספרים בגליון העבודה שלך. עם זאת, לצורך המחשה בחרנו למקם את הערכים על הגיליון.

תוכל לעזור בפיתוח האתר, שיתוף הדף עם החברים שלך

wave wave wave wave wave