ایجاد سوال
dark_mode
0 دوستدار 0 امتیاز منفی
25 visibility
موضوع: آفیس توسط:

استف باید یک ماکرو ایجاد کند که عملیاتی را بر اساس سلول‌هایی که کاربر قبل از اجرای ماکرو انتخاب می‌کند، انجام دهد. او می‌داند که اگر کاربر محدوده‌ای از سلول‌ها را انتخاب کند چگونه این کار را انجام دهد، اما نمی‌داند که چگونه از سلول‌ها در یک انتخاب عبور کند، اگر کاربر محدوده‌ای از سلول‌های غیرمرتبط را انتخاب کند.

وقتی صحبت از VBA می شود، تفاوت بسیار کمی بین انتخاب پیوسته و انتخاب غیرمرتبط وجود دارد. اکسل به شما امکان می دهد به هر یک از آنها یکسان دسترسی داشته باشید. قطعه کد زیر را در نظر بگیرید:

Dim c As Range

For Each c In Selection
     do something here
    MsgBox c.Address & vbTab & c.Value
Next c

در این مورد، سلول‌های محدوده انتخاب‌شده، یکی یکی، با استفاده از حلقه For... Next عبور می‌کنند. در داخل حلقه متغیر c نشان دهنده یک سلول جداگانه است و همانطور که نشان داده شده است می توان از آن در مراجع استفاده کرد.

اگر بنا به دلایلی می‌خواهید به هر ناحیه پیوسته در انتخاب دسترسی داشته باشید، می‌توانید این کار را با آدرس دادن خاص به گروه Areas انجام دهید، همانطور که در این قطعه نشان داده شده است:

Dim a As Range
Dim c As Range

For Each a In Selection.Areas
    Now each a refers to a contiguous range
    Do something here with areas, if desired
    For Each c In a.Cells
        Now each c refers to a cell in the area
        Do something here
        MsgBox c.Address & vbTab & c.Value
    Next c
Next a

همچنین باید توجه داشته باشید که اگر محدوده ای که می خواهید به آن دسترسی داشته باشید (هم پیوسته یا غیر پیوسته) در اکسل نامگذاری شده است، می توانید فقط به سلول های محدوده نامگذاری شده دسترسی داشته باشید. به سادگی کلمه "انتخاب" را در هر یک از این مثال ها با نام محدوده جایگزین کنید، به این ترتیب:

Dim c As Range

For Each c In Range("MyNamedRange")
     do something here
    MsgBox c.Address & vbTab & c.Value
Next c
اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

looks_5نام شما برای نمایش - اختیاری
حریم شخصی : آدرس ایمیل شما محفوظ میماند و برای استفاده های تجاری و تبلیغاتی به کار نمی رود
عدد چهار رقمی در تصویر را وارد کنید

برای جلوگیری از این تایید در آینده, لطفا وارد شده یا ثبت نام کنید.
اگر حساب گوگل دارید به راحتی وارید شوید

0 پاسخ وجود دارد

سوالات مشابه

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما
0 دوستدار 0 امتیاز منفی
0 پاسخ 37 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 31 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 28 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 30 visibility
0 دوستدار 0 امتیاز منفی
0 پاسخ 26 visibility

24.3k سوال

9.6k پاسخ

614 دیدگاه

11.2k کاربر

220 نفر آنلاین
1 عضو و 219 مهمان در سایت حاضرند
اعضای حاضر در سایت
بازدید امروز: 17016
بازدید دیروز: 17853
بازدید کل: 20329198
...