۰۷-خرداد-۱۳۹۵, ۱۸:۰۵:۱۴
سلام
اینطور که متوجه شده*م و تا حالا هم همین کار رو کرده*م؛ اگر در VBA اکسل نشانی Range رو با جدول بدیم مانند نمونه زیر:
نیازی به اضافه کردن نام شیت در اول نشانی نیست.
توی برنامه خودم یه فانکشن نوشته*م که با این کار می*کنه و در کلاس ازش استفاده کرده*م و مشکلی هم نداره.
ولی وقتی خواستم همین کار رو توی شیت انجام بدم خطا داد:
چون قبلا همچین مشکلی نداشتم خیلی تعجب کردم و بعد از کلی جستجوی بی*فایده در اینترنت بالاخر با اضافه کردن نام شیت به اول نشانی خطا رفع شد.
توضیح این مشکل چیه؟ چون اینهمه در اکسل برنامه نوشتهم هیچوقت با آدرسدهی با نام جدول نیاز به اضافه کردن نام شیت نداشتم.
اینطور که متوجه شده*م و تا حالا هم همین کار رو کرده*م؛ اگر در VBA اکسل نشانی Range رو با جدول بدیم مانند نمونه زیر:
کد:
Range("TableName[ColumnName]").Cells(R,C)
توی برنامه خودم یه فانکشن نوشته*م که با این کار می*کنه و در کلاس ازش استفاده کرده*م و مشکلی هم نداره.
ولی وقتی خواستم همین کار رو توی شیت انجام بدم خطا داد:
کد:
Run-Time error 1004: Method Range of object _Worksheet faild
کد:
Sheet1.Range("TableName[ColumnName]").Cells(R,C)