יצירת בינגו

anatfridman

New member
יצירת בינגו

שלום לכולכם: אני מנסה ליצור בינגו. השתמשתי בנוסחה randbetween - מס' אקראי בין 1-90 . השאלה שלי היא כיצד ניתן למנוע מהנוסחה לתת את אותו מס' פעמיים בתוך טווח של תאים שבו רצה הנוסחה? תודה על העזרה ענת
 

מיכאל אבידן

Active member
מנהל
בעזרת קוד מקרו פשוט . . .../images/Emo43.gif

המקרו אמור להציג 90 מספרים, שונים, ייחודיים ואקראיים, מ-1 ועד 90:
Sub Bingo() Set AWF = Application.WorksheetFunction Dim ARR(90) As String Counter = 1 While Counter < 91 Guess = Int((90 * Rnd) + 1) If ARR(Guess) <> "X" Then MsgBox "Step: " & Counter & Chr(13) & Chr(13) & "The Number is: " & Guess ARR(Guess) = "X" Counter = Counter + 1 End If Wend MsgBox "End Of Game" End Sub​
 

anatfridman

New member
עדיין צריכה עזרה

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

מיכאל אבידן

Active member
מנהל
עזבי את התאים המסומנים . . .../images/Emo43.gif

1. הכניסי את הקוד לקובץ ריק. 2. הקוד שלהלן (לאחר שינוי קל) ימלא, בנוסף לחלונית ההודעה, את התאים A1:A90 במספרים האקראיים.
Sub Bingo() Set AWF = Application.WorksheetFunction Dim ARR(90) As String [A:A].ClearContents Counter = 1 While Counter < 91 Guess = Int((90 * Rnd) + 1) If ARR(Guess) <> "X" Then MsgBox "Step: " & Counter & Chr(13) & Chr(13) & "The Number is: " & Guess Range("A" & Counter).Value = Guess ARR(Guess) = "X" Counter = Counter + 1 End If Wend MsgBox "End Of Game" End Sub​
 
למעלה