PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : [حل شده] ظاهر نشدن Property ها بعد از زدن Dote .



hamid_rm
2016/01/13, 15:49
سلام دوستان
من تا دیشب داشتم کار میکردم وقتی تایپ می کردم Sheet1 و کلید نقطه رو میزدم، خواص اون ظاهر میشد. مثل Cells که بعد از اون میخواستم Range رو بنویسم. اما الآن Sheet1 رو نمیشناسه و اصلاً انگار یه همچین چیزی وجود نداشته از اول.
کسی با این مشکل برخورد کرده ؟؟ چی کارش کنم؟؟؟

shamsololama
2016/01/13, 16:22
با درود فراوان

شما ببین برای همه گزینه ها به این صورت هست یا خیر یعنی مثلا بنویسید Range. ببین اطلاعات میاد یا نه و اینکه اگر کنترل بگیرید و اسپیس بزنید پروپرتیس براش باز میشه یا نه که اگر فقط برای شیت یک اینگونه بود یعنی شیتی به نام شیت یک ندارید در غیر اینصورت بفرمائید که بررسی بشه

hamid_rm
2016/01/13, 17:11
با سلام خدمت دوست و استاد عزیزم
خیلی باهاش کلنجار رفتم. دیدم فقط این اتفاق یک حساسیت نسبت به sheet1 هست اونم فقط در کد پشت فرم. یعنی در ماژولها اینطور نبود یا در شیتهای دیگه.
کاری که کردم این بود که Cell.Range. رو حذف کردم و دیدم اینطوری کارکرد. یعنی اینطوری اطلاعات روی فرمم رو میریخت توی شیت 1. اما یک بار اینطوری کرد و دفعه بعد ریخت تو شیت 2. منم خیلی وقت کم دارم و مشکل رو فعلاً طور دیگری حل کردم.
اسم شیت ها رو عوض کردم. به اسن شکل که اون شیتی که قراره اطلاعات ازش برداشت بشه رو اسمش رو گذاشتم 1 و اون شیتی که قراره اطلاعات در اون قرار بگیره گذاشتم شیت 4 . فعلاً 2 بار چک کردم دیدم درست کار میکنه.
اما از دیروز هی اکسلم پیغام میده و REstat میکنه برنامه رو. نمیدونم این دیگه چیه ؟؟؟ چطور برطرفش کنم. این دیگه یک مشکل خیلی بزرگه. میدونید چیکارش کنم ؟؟

shamsololama
2016/01/13, 18:11
با سلام خدمت دوست و استاد عزیزم
خیلی باهاش کلنجار رفتم. دیدم فقط این اتفاق یک حساسیت نسبت به sheet1 هست اونم فقط در کد پشت فرم. یعنی در ماژولها اینطور نبود یا در شیتهای دیگه.
کاری که کردم این بود که Cell.Range. رو حذف کردم و دیدم اینطوری کارکرد. یعنی اینطوری اطلاعات روی فرمم رو میریخت توی شیت 1. اما یک بار اینطوری کرد و دفعه بعد ریخت تو شیت 2. منم خیلی وقت کم دارم و مشکل رو فعلاً طور دیگری حل کردم.
اسم شیت ها رو عوض کردم. به اسن شکل که اون شیتی که قراره اطلاعات ازش برداشت بشه رو اسمش رو گذاشتم 1 و اون شیتی که قراره اطلاعات در اون قرار بگیره گذاشتم شیت 4 . فعلاً 2 بار چک کردم دیدم درست کار میکنه.
اما از دیروز هی اکسلم پیغام میده و REstat میکنه برنامه رو. نمیدونم این دیگه چیه ؟؟؟ چطور برطرفش کنم. این دیگه یک مشکل خیلی بزرگه. میدونید چیکارش کنم ؟؟


با درود فراوان

برای اینکه با اسم شیت ها به مشکل بر نخوری فکر کنم به این صورت شیت ها رو صدا کنی
Sheets("sheet1").range

اگر فقط در این فایل ارور و ریستارت میده که یک فایل جدید ایجاد کن و کد ها و فرم ها رو به فایل جدید انتقال بده و اگر در همه فایل های اکسل این ارور رو داری بهتره آفیس رو یه بار دیگه نصب کنی

Ali Parsaei
2016/01/14, 18:52
با درود فراوان

برای اینکه با اسم شیت ها به مشکل بر نخوری فکر کنم به این صورت شیت ها رو صدا کنی
Sheets("sheet1").range

اگر فقط در این فایل ارور و ریستارت میده که یک فایل جدید ایجاد کن و کد ها و فرم ها رو به فایل جدید انتقال بده و اگر در همه فایل های اکسل این ارور رو داری بهتره آفیس رو یه بار دیگه نصب کنی
سلام،
من هم بعضي مواقع به مشکلاتي شبيه اين بر مي خورم،
فرضا" علي القاعده وقتي به يک جايي ارجاع مي دهم، دستور بعدي ام بايد در همان محل ارجاع داده شده عمل کند ولي باگ مي دهد!
به فرض وقتي مي گويم برو تو آشپزخانه شير را باز کن منظور اين است که شير توي آشپز خانه را باز کن! ولي اشکال پيش مي آيد.
ولي وقتي مي نويسم: برو توي آشپزخانه، توي آشپزخانه شير را باز کن درست عمل مي کند! يعني آشپزخانه را مجدد بايد تکرار کنم!
يک مثال مي زنم:
مثلا" بعضي مواقع مي نويسم: sheet1.activate بعد مي نويسم range("a1").select يعني اول شيت يک را فعال کن و بعد خانه a1 را انتخاب کن، ولي کار نمي کند!
بايد در خط دوم هم حتما" sheet1 را تکرار کنم! به اين صورت: اول بنويسم sheet1.activate و بعد دوباره بنويسم sheet1. range("a1").select تا کار کند!
اگر هم يک ضرب فقط بنويسم sheet1.range("a1").select کار نمي کند!
(البته اين را به عنوان مثال گفتم تا مطلب را برسانم و نه اينکه دقيقا" همين دستور فوق کار نکند)
فکر کنم بعضي مواقع به خاطر اين است که در vba هي از اين دستور به آن دستور جابجا شده ام و اکسل قاطي مي کند، مثلا" بايد اول دگمه stop را بزنم تا يک دستوري که در حال اجرا بوده (و قبلا" وسطش باگ داده بوده) متوقف شود يا يک بار پنجره vba را ببندم. ولي هميشه هم اينطور نيست و باز مشکل پابرجا است.
نمي دانم اشکال از بيسوادي من است؟ فکر کنم يک اصول اصلي را بلد نيستم و بايد بيشتر و سيستماتيک تر مطالعه کنم! نظر شما چيست؟

hamid_rm
2016/01/17, 09:52
با تشکر از دوستانی که نظر دادند.
آقای shamsololama (http://forum.exceliran.com/member.php/9-shamsololama) با تشکر، ای چیزی که شما گفتی مشکل رو حل کرد.
یک تجربه:یکی از چیزهایی که باعث این مشکل شده بود و راه حل دوستمون رو هم در کد من با مشکل مواجه کرده بود، این بود که عنوان شیت 1 من در کد اینطوری نوشته شده بود"(اساتید) Sheet1 ", در حالی که وقتی بجای کلمه "اساتید" فارسی، Sheet1 نوشتم مشکل حل شد و تونستم از کد Sheets("sheet1").range استفاده کنم.
یعنی در عنوان شیت نباید فارسی بنویسیم
جناب پارسا ی عزیز به نظرم اکسل هنوز اشکلات زیادی داره گرچه بسیار هوشمند تر و با قدرت تر از چیزی که فکر میکردم هست اما انگار درونش ضعفهایی داره.( البته من از اکسل خیلی خیلی اطلاعات کمی دارم شاید قضاوت صحیحی نداشته باشم)
مثلاً اون 7 - 8 سال پیش که من خیلی مسلط بودم و با SQL , Oracle کار میکردم، وقتی بعد از SQL به سراغ Oracle رفتم دیدم که اوراکل خیلی قویتره و مشکلات و ضعفهای Sql رو نداره. میشه اکسل رو هم با ویژوال استودیو به همین شکل قیاس کرد.

به هر حال ممنونم و شاد و پیروز باشید.