محیط ویژوال بیسیک در اکسل

در یادگیری ویژوال بیسیک آشنایی با محیط و بخش های مختلف ویژوال بیسیک قدم اول می باشد بنابراین در این مقاله به معرفی قسمت های مختلف محیط برنامه نویسی به زبان ویژوال بیسیک و منوهای آن می پردازیم. لازم به ذکر است که تمامی این بخش ها در سطوح پایه ای و عمومی یادگیری ویژوال بیسیک کاربرد ندارند و سطوح تخصصی تر و یا حتی فوق برنامه با آن ها سر و کار خواهیم داشت.

محیط ویژوال بیسیک

ویژوال بیسیک در اکسل بسیار گسترده، پیچیده و در عین حال User Friendly است. کاربران در ابتدای یادگیری به دلیل ماهیت ویژوال بیسیک سر در گم خواهند شد و دلیل آن اینست که بیان مفاهیم باید منسجم باشد و از طرفی یکجا بیان نمودن مفاهیم هم محور در حالی که سطوح یادگیری و کاربردی متفاوت دارند دشوار است

در مقالات اکسل پرو تلاش شده ضمن ارایه ی منسجم مفاهیم به سطوح یادگیری ویژوال بیسیک هم توجه شود فلذا هوشیاری و توجه خوانندگان آن ها را در درک بهتر محتوا کمک خواهد نمود.

محیط ویژوال بیسیک

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

محیط ویژوال بیسیک

محیط ویژوال بیسیک

محیط ویژوال بیسیک

پنجره Project Explorer در VBA

در واقع لیستی از پروژه های شما ارایه می دهد، در پنجره Project Explorer شما می توانید به تمام برنامه ها و کدهایی که در فایل اکسل شما قرار دارد دسترسی داشته باشید و آن ها را ویرایش نمایید. از طرفی تمام کد هایی که قصد نوشتن آن ها را دارید در این قسمت قابل مشاهد می باشند. پنجره Project Explorer به صورت پیش فرض در VBA وجود دارد. ولی در صورت غیر فعال شدن آن می توانید از منوی اصلی View گزینه ی project Explorer را انتخاب نمایید.

آیکون Project Explorer در نوار ابزار استاندارد (Standard Toolbar) وجود دارد. که از این طریق هم میتوان این پنجره را فعال نمود.

در مقالات آتی با کاربردهای پنجره Project Explorer بیشتر آشنا خواهید شد. در اینجا به این توضیح بسنده خواهیم نمود که در این پنجره می توان به تمامی کدهای نوشته شده در فایل اکسل دسترسی داشت و کدها و فرم های جدید بوجود آورد.

پنجره Properties Window در VBA

در پنجره Properties Window در واقع لیستی از خواص Object انتخاب شده در قسمت Project Explorer ارایه می گردد و به کاربر امکان تغییر آن ها داده می شود. همچنین این پنجره هنگام ویرایش User Form ها بسیار کاربرد دارد که در آینده با آن آشنا خواهیم شد. پنجره Properties Window  به صورت پیش فرض در VBA وجود دارد. ولی در صورت غیر فعال شدن آن می توانید در منوی اصلی View آن را پیدا کنید.

همینطور آیکون  Properties Windowدر نوار ابزار استاندارد (Standard Toolbar) هم وجود دارد.

برنامه ویژوال بیسیک به تمامی فایل های اکسل (Workbook)، صفحات اکسل، ماژول ها که حاوی کد های برنامه می باشند، User Form ها و Class ها به دید اشیا (Objects) نگاه می کند، از دید ویژوال بیسیک هریک از این اشیا دارای خواصی می باشند که بخشی از خواص آن ها را می تواند در پنجره Properties Window تغییر داد. با مفهوم شی در آینده بیشتر اشنا خواهیم شد.

پنجرهObject Browser  در VBA

در واقع لیستی از اشیا (Object) ویژوال بیسیک می باشد که کاربر بنا به نیاز خود می تواند از آن ها استفاده نماید. همچنین در این پنجره تمامی متد ها و پروپرتی های اشیا گرد آوری شده است، این پنجره برای کد نویسان به عنوان یک دایرکتوری عمل میکند. برای فعال نمودن پنجره Object Browser علاوه بر کلید میانبر F2 می توان از طریق منوی View هم اقدام نمود.

همینطور آیکون  Object Browser در نوار ابزار استاندارد (Standard Toolbar) هم وجود دارد.

محیط ویژوال بیسیک

Code Module در VBA

ماژول ها در واقع زیر برنامه های مستقل هستند که کد های ویژوال بیسیک را در خود جای می دهند، ماژول ها می توانند حاوی چندین برنامه ی مختلف باشند. صفحه ای که هر ماژول (Module) برای کد نویسی در اختیار کاربر قرار می دهد را پنجره کد نویسی ماژول می گوییم. در ضمن کد ها می توانند در فضای کد نویسی Sheet ها هم نوشته شوند که در آینده در این مورد بیشتر توضیح خواهیم داد. برای اینجاد یک ماژول جدید می توان از منوی Insert گزینه ی Module را انتخاب نمود. همچنین می توان از Standard Toolbar هم برای ایجاد یک ماژول جدید اقدام نمود.

ماژول ها برای کد نویسی ویژوال بیسیک به منظور نوشتن برنامه ها یا توابع تعریف شده توسط کاربران استفاده می گردند، ماژول های حاوی کدها را می توان به صورت مستقل از فایل اکسل به صورت Add-in یا همراه با فایل اکسل و یا به صورت فایل متنی ساده دخیره نمود.

امروزه کاربران بسیاری محصولات کد نویسی خود را در این غالب ها برای استفاده سایرین و یا فروش آن ها به اشتراک می گذارند.

پنجرهImmediate Window  در VBA

از این پنجره در کد نویسی ها به منظور اجرای سریع برخی دستورات می توان استفاده نمود که کار با آن در مباحث پیشرفته تر قرار می گیرد. به منظور فعال نمودن پنجره Immediate Window میتوان از منوی View اقدام نمود.

User Form در VBA

فرم ها (User Form) در واقع برای این بوجود می آیند که ارتباط بین کاربر و کد های ویژوال بیسیک را راحت تر نمایند. در واقع اگر احتیاج به این باشد که بین کاربر و برنامه اطلاعاتی تبادل گردد می توان از فرم ها استفاده نمود. به عنوان مثال در جایی که لازم است کاربر پارامتری را به برنامه وارد نماید و یا با انتخاب خود روند برنامه را مشخص کند.

نحوه ی استفاده از User Form ها در حیطه ی آموزش های تخصصی ویژوال بیسیک قرار دارد که در ادامه ی مقالات بررسی خواهد شد. برای اینجاد یک فرم (User Form) جدید می توان از طریق منوی Insert گزینه ی User Form را انتخاب نمود. همچنین می توان از Standard Toolbar هم برای ایجاد یک فرم جدید اقدام نمود.

به عنوان مثال فرمی که برای ارتباط با کاربر در یکی از کدهای ویژوال بیسیک بنده مورد استفاده قرار گرفته در ادامه نشان داده شده که به کاربر این امکان را می دهد بدون وارد شدن به فضای ویژوال بیسیک بتواند پارامترهای مورد نیاز برنامه را تعیین کنید

User Form

اشتراک گذاری در شبکه های اجتماعی: share on facebook share on google plus share on linkedin

۱۷ نظر

  1. ghandeasal

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

  2. امیر

    با سلام ممنون ازتلاش های بسارتون
    من می خواستم یک دکمه پرینت در اکسل قرار بدهم که زیر فرمول هام قرار گیرد بعد از کار با فرمول ها ان دکمه را زده و به صورت عکس یا پی دی اف در سسیتم مورد نظرم قرار گیرد (یعنی وقتی که فرمول ها کار کردند من بتوانم ان را به صورت عکس یا پی دف در سیستم سیو شود )
    ممنون می شم راهنماییم کنید

    1. حامد قدیمی

      سلام، خواهش میکنم، به نظر من راه بهتر این هست که از Screen Shot استفاده کنید، که در تب Insert قرار گرفته، راه دیگر استفاده از Print Screen ویندوز هست که راه همیشگی و خوبیه، نرم افزاری مثل Snagit هم که برای کاری که شما میخواهید فوق العاده هست، میتوانید هر وقت بخواهید از صفحه فیلم یا عکس بگیرید، به هر حال، اگر در اکسل بخواهید این کار را انجام دهید باید یک کد در ویژوال بیسیک بنویسید که با اجرای کد از صفحه پرینت گرفته بشه، بعد از نوشتن کد یک دکمه روی صفحه بگذارید که با کلیک روی دکمه کد اجرا بشه، نوشتن کدش سخت نیست، میتوانید کد مورد نظر را ضبط کنید، موفق باشید.

      1. امیر

        ممنون از راهنماییتون
        می شه اموزش رو هم بزارید با استفاده از ویژوال بیسیک چون نمی توانم بقیه کارها رو انجام بدم
        تحقیق بودکه استاد به من گفته انجام بدم
        با تشکر فراوان

        1. حامد قدیمی

          مقالات آموزشی سایت کامل هستند، لطفاً آموزش ضبط ماکرو را مطالعه کنید، برای اختصاص دکمه به اجرای ماکرو فقط کافیست از تب Developer، در گروه Controls روی Insert کلیک کنید و از قسمت Form Controls گزینه ی Button را برگزیندی، روی دکمه کلیک راست کنید و با انتخاب Assign Macro ماکرو نوشته شده را به دکمه مرتبط نمایید.

          1. امیر

            بعد اگر امکان دارد با اکسل۲۰۱۳ باشد تفاوت های زیادی وجود دارد

      2. امیر

        ممنون از راهنماییتون ولی باید در اکسل این کار را انجام بدم می شه اموزش این کار برایم بزارید
        ممنون از تلاشتون

        1. حامد قدیمی

          در پایگاه دانش مقالات آموزشی در دسترس هست، قسمت مربوط به ویژوال بیسیک را از اول مطالعه کنید، ویژوال بیسیک در نسخه های اکسل ۲۰۰۷، ۲۰۱۰، ۲۰۱۳ و ۲۰۱۶ تفاوت چندانی با هم ندارد. موفق باشید.

  3. سعيد رضواني

    سایت بسیارکارآمد وپرکاربرد می باشد اززحمات تک تک شما عزیزان که دراعتلای فرهنگ آموزش فعالیت می کنیدواقعاًسپاسگزارم.

  4. mahdi

    با سلام من می خواستم فرمولی بنویسم و نیاز به کمک دارم
    اگر عددa1مساوی یا کوچک تر از ۱بود +۱کن اگر عدد a1بزرگتر از۱۰۰بود +۲کن
    ممنون می شم از راهنماییتون

  5. علی

    : با سلام می خواهم تعدادی پرسشنامه درحدود کمتراز۲۰ عدد رادراختیارکاربران ( کاربران فرعی) گذاشته، سپس اینجانب(کاربراصلی) بادریافت داده های پرسشنامه به طورهمزمان ازطریق شبکه داخلی برروی آنها محاسبات لازم راانجام دهم. خیلی ممنون میشم.

    1. حامد قدیمی

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

دیدگاهتان را بنویسید؟