به نام خداوند بخشنده و مهربان در این پست آموزشی قصد داریم پیرامون حلقه Do Until در ماکرونویسی اطلاعات مفیدی را خدمت شما سروران و دنبال کنندگان محترم سایت آموزشی اکسل لرن ارائه کنیم.
معرفی و کاربرد حلقه Do Until در ماکرونویسی
در ابتدا ساختار(Syntax) این حلقه را با یکدیگر بررسی خواهیم نمود:
1 2 3 4 5 6 7 8 9 10 11 |
Do Until condition [statement 1] [statement 2] ... [statement n] [Exit Do] [statement 1] [statement 2] ... [statement n] Loop |
در ساختار فوق، حلقه Do Until تا زمانی به تکرار خود ادامه می دهد که شرط Condition برقرار شود.
به منظور درک بهتر از کاربرد این حلقه به مثالی که در ادامه آورده شده است دقت نمایید:
1 2 3 4 5 6 7 8 |
Sub Excellearn() Dim n As Integer n = 0 Do Until n = 10 n = n + 1 Cells(n, 1) = "Company " & n Loop End Sub |
در ماکروی فوق ما شرط تکرار حلقه را برابری محتوای n با عدد 10 قرار دادیم به عبارتی تا زمانی که مقدار n برابر با مقدار عددی 10 گردد محتوای حلقه تکرار خواهند شد. لذا خروجی ما بصورت زیر خواهد بود:
به ماکروی زیر دقت کنید:
1 2 3 4 5 6 7 8 |
Sub excellearn() Dim iCounter As Integer iCounter = 1 Do Until iCounter > 6 Cells(iCounter, 1).Value = 20 iCounter = iCounter + 1 Loop End Sub |
اجرای حلقه Do Until تا زمانی که متغیر شمارنده iCounter بزرگتر از عدد 6 گردد لذا خروجی بصورت زیر خواهد بود:
به مثالی دیگر در خصوص حلقه Do Until دقت نمایید:
با اجرای ماکروی زیر:
1 2 3 4 5 6 7 8 |
Sub excellearn() Dim iCounter As Integer iCounter = 2 Do Until IsEmpty(Cells(iCounter, 1)) Cells(iCounter, 3).Value = Cells(iCounter, 1) & " " & Cells(iCounter, 2) iCounter = iCounter + 1 Loop End Sub |
تا زمانی که سلول خالی مورد بررسی قرار گیرد، یکایک سلول های ستون A با سلول نظیر آن در ستون B ادغام خواهد شد.
خروجی بصورت زیر خواهد بود:
به مثالی دیگر در خصوص حلقه Do Until دقت نمایید:
با توجه به تصویر فوق قصد داریم میانگین رتبه هریک از شرکت کنندگان را توسط حلقه Do Until محاسبه کنیم.
به ماکروی زیر دقت کنید:
1 2 3 4 5 6 7 8 |
Sub Excellearn() Dim n As Integer n = 2 Do Until IsEmpty(Cells(n, 1)) And IsEmpty(Cells(n, 2)) Cells(n, 3) = WorksheetFunction.Average(Cells(n, 1), Cells(n, 2)) n = n + 1 Loop End Sub |
با اجرای ماکروی فوق تا زمانی که در ستون های A و B سلول های خالی(IsEmpty) مورد بررسی قرار نگرفته اند، محتوای حلقه که محاسبه میانگین امتیازهای کسب شده توسط هریک از شرکت کنندگان است محاسبه خواهد شد.
خروجی پایانی پس از اجرای ماکرو بصورت زیر خواهد بود:
امیدواریم پست آموزشی حلقه Do Until در ماکرونویسی اکسل مورد رضایت شما سروران گرامی قرار گرفته باشد لذا در صورت وجود هرگونه انتقاد و پیشنهاد می توانید آن را در قسمت نظرات برای ما ارسال نمایید.