‫ درس 3 : تغییر در ماکرو ( بخش اول ) | انجمن

مدیریت
مدیریت 20 شهریور 1396

1. بر روی تب developer  کلیک کنید و record marcoرا کلیک  کنید.

2. سپس اشاره گر را بر روی اولین سلول ببرید. یک ستون از اعداد بسازید و در ستون کناری، ضرب اعداد ستون اول را در عدد 4 محاسبه کنید.

3. مجموع اعداد ستون دوم را با استفاده از دستور sumبدست اورید.

4. برای توقف ضبط بر روی stop recordingکلیک کنید.

5. برای ویرایش ماکرو، روی دکمه  marcoکلیک کنید.

6.برای ویرایش ماکرو، بر روی editکلیک کنید تا بتوانید محتوی کد را تغییر دهید.

7.برای این که مقدار یک سلول را تغییر داد، ابتدا باید سلول (مثلا A1) را انتخاب کرد که به صورت زیر انتخاب می شود.

Range("A1").Select

8.برای تغییر مقدار سلول A1از مقدار یک به ده، از دستور زیر استفاده می شود.

ActiveCell.FormulaR1C1 = "10"

9. تغییر مقدار سایر سلول ها(از A1تا A9) به صورت زیر انجام می شود.

Range("A2").Select

    ActiveCell.FormulaR1C1 = "20"

    Range("A3").Select

    ActiveCell.FormulaR1C1 = "30"

    Range("A4").Select

    ActiveCell.FormulaR1C1 = "40"

    Range("A5").Select

    ActiveCell.FormulaR1C1 = "50"

    Range("A6").Select

    ActiveCell.FormulaR1C1 = "60"

    Range("A7").Select

    ActiveCell.FormulaR1C1 = "70"

    Range("A8").Select

    ActiveCell.FormulaR1C1 = "80"

    Range("A9").Select

    ActiveCell.FormulaR1C1 = "90"

10. کد زیر برای ضرب سلول A1در عدد 4 و نمایش در سلول B1، از کد زیر استفاده می شود. در کد زیر، RC[-1]به معنای عدد همان سطر ولی ستون قبلی در عدد 4 ضرب شود. برای تغییر مقدار 4، می توان این عدد را با هر عددی عوض کرد. در این مرحله عدد 4 را به 5 تغییر می دهیم.

ActiveCell.FormulaR1C1 = "=RC[-1]*4"

11. تکرار محاسبه فوق برای مابقی ستون ها از دو طریق میسر است. روش اول این که هر سلول را انتخاب کرده و سپس با دستور بالا مقدار سلول تغییر نماید. روش ساده و بهتر این است که از دستور زیر استفاده شود که به صورت خودکار تغییر در مقدار سلول انجام می شود.

Selection.AutoFill Destination:=Range("B1:B9”)

12.برای ذخیره مجموع مقادیر ستون دوم در یک سلول مشخص، ابتدا سلول مورد نظر را به صورت زیر انتخاب می کنیم.

   Range("B10").Select

13.محاسبه مقدار مجموع ستون دوم به وسیله کد زیر انجام می شود.

ActiveCell.FormulaR1C1= "=SUM(R[-9]C:R[-1]C”)

کد فوق به این معنا است که مقدار سلول هایی که در ستون سلول انتخاب شده فعلی هستند را از سطر یک قبلی تا سطر نه تا قبلی با هم جمع شوند.

14.اگر بخواهید مجموع سطرها را به دو سطر بالای سلول انتخاب شده محدود کنید کافی است که کد زیر را جایگزین کنیم.

ActiveCell.FormulaR1C1= "=SUM(R[-2]C:R[-1]C”)

15. پس از انجام تغییرات، روی دکمه saveکلیک کنید. برای اجرای ماکرو، روی marcosکلیک کرده و ماکرو مورد نظر را انتخاب کنید و سپس دکمه Runرا کلیک کنید.

16. اگر مایل به ذخیره تغییرات هستید، بر روی دکمه saveکلیک کنید.