نوشته اصلی توسط
x
سلام آقای داوری.
میشه درباره کد های زیر بیشتر توضیح بدین.هنوز عملکردشون واسم یکم گنگه...:
کد PHP:
with
set
is Nothing
xlColorIndexAutomatic
Intersect
.............با تشکر.............
سلام دوست عزیز.
1- with عملکرد ساده ای داره. فقط برای کوتاه کردن کد نویسی ازش استفاده می کنن.
مثلا:
به جای
کد PHP:
Range("B2:P16").Font.Bold = False
Range("B2:P16").Interior.ColorIndex = xlColorIndexAutomatic
Range("B2:P16").Font.color = blue
برای اینکه از تکرار جلوگیری کنیم میشه بنویسیم:
کد PHP:
With Range("B2:P16")
.Font.Bold = False
.Interior.ColorIndex = xlColorIndexAutomatic
.Font.color = blue
End With
2- set در زبان ویژوال بیسیک برای نسبت دادن یک شی به شی دیگر استفاده میشه:
اولا باید فرق شی و متغیر رو بدونی.
مثلا
خوب این یک متغیر است و به راحتی برای نسبت دادن از یک مساوی استفاده میشه کرد. مثلا
اما range یک شی هست. همچنین workbook, worksheet, و row و column. اینها شی هستند که برخی باز شامل شی هایی هم میشوند. مثلا range ممکنه شامل چند row بشه و row ممکنه شامل چند cell بشه. در حالی که range خودش شی ای از شی های worksheet هایی هست که خود این worksheet ها فرزند یک workbook هستش.
حالا این بحث خیلی مفصلی هست. اما به هر صورت برای نسبت دادن یک شی به یک شی جدید از عبارت set استفاده می کنیم.
مثلا
dim a as range خوب این یک شی از نوع range هست
حالا می گیم
کد PHP:
a = range("A1:A10")
غلطه
باید بنویسی:
کد PHP:
set a = range("A1:A10")
اگر اینطور عمل کنی. a و
معنی واحدی میدن.
یعنی a.intorior.backcolor رنگ پشت زمینه اون منطقه A1 نا A10 رو معنی میده
کد PHP:
a.intorior.backcolor= black
با این شی ها کارای زیادی میشه کرد. یه مطالعه بکنشون.
برای پیدا کردن شی مادر یا شی کافیه بنویسی:
کد PHP:
dim b as range
set b = a.Parent
به این صورت.
3- is nothing در زبان VB معنی NULL رو میده. یعنی یک شی ای هنوز به شی خاصی نسبت داده نشده است. ببین یک متغیر وقتی تعریف میشه مقدار دهی اولیه میشه. اگر هم نشه به هرحال یک مقدار داخل خودش داره. اما یک شی وقتی تعریف میشه NULL هست. یعنی به هیچ چیزی اشاره نمی کنه. مگر شما به یک شی نسبت بدهیش:
مثلا:
dim a as range
تا الان a یک شی NULL هست.
باید یکی از دو روش زیر رو انتخاب کنی. بگی a یک شی جدید است یا a یک شی ای هست که الان وجود داره.
set a = new range به مفهوم اینه که a یک شی جدید است.
کد HTML:
set a = range("A1:A10")
به مفهوم اینه که a همون شی ای است که الان وجود داره و به خونه های A1 تا A10 اشاره داره.
پس وقتی میگیم if a is nothing then یعنی اگر هنوز a وجود نداره یعنی هیچ جایی واسه a تعریف نشده. این کارو بکن.
4- xlColorIndexAutomatic نماینده کد رنگ اتوماتیک هست. اینو بجای یک عدد که نمایند رنگ هست میتونی استفاده کنی. البته اگر حافظت خوبه می تونی عدد رو هم حفظ کنی :دی
5- Intersect دو تا range مختلف رو به عنوان ورودی می گیره و فضای مشترک بین این دو رو برای ما مشخص می کنه. می تونی از این کد برای اینکه بدونی دو range با هم نقطه مشترک دارن یا نه استفاده کنی.
موفق و موید باشی.
علاقه مندی ها (Bookmarks)