هدف ساخت یک Progress Indicator هست که گذشته از نمای فرم، در جدول هم قابل استفاده باشد:
جدول
intable.png
فرم پیوسته
inform1.png
فرم (دیتاشیت)
inform2.png
هدف ساخت یک Progress Indicator هست که گذشته از نمای فرم، در جدول هم قابل استفاده باشد:
جدول
intable.png
فرم پیوسته
inform1.png
فرم (دیتاشیت)
inform2.png
پیش از هر چیز باید با کارآکترهای Block/Geometric اشنا باشیم.
در برنامه Character Map ابتدا Unicode Subrange رو باز و از آنجا Block Elements and Geometric Shapes رو انتخاب کنید:
subrange.png
در اینجا فقط با 2 کارآکتر سروکار داریم: Full Block و Left Half Block
fullblock.png
lefthalfblock.png
برای کوتاه شدن اندازه نمایشگر برمبنای نیم بلوک کار میکنیم - به این صورت که هر واحد را با یک نیم بلوک نشان میدهیم؛
پس مقدار 6 برابر با 3 بلوک و مقدار 11 برابر 5 بلوک + نیم بلوک
حالا میتونیم در جدول یک calculated field اضافه کنیم که بر اساس مقدار فیلد مورد نظر (در این مثال UnitsInStock)،
یک string بر مبنای آنچه که در بالا گفته شد بسازد:
IIf(([UnitsInStock]=Fix([UnitsInStock]/2)*2),String$([UnitsInStock]/2,"█"),String$(Fix([UnitsInStock]/2),"█")+"▌")
در فرم میتونیم یک conditional formatting هم اضافه کنیم - با این فرض که مقدار UnitsInStock بین 0 تا 100 هست.
condformat.png
پست تکمیلی جناب آقای بهرامی با استفاده از فیلد rich text
خسته نباشید استاد . ( دیگه کار داره به جاهای باریک میکشه واقعا جادوگریه )
والا ما که اندر خم یک کوچه گرفتار شدیم هنوز .
سللام و عرض ادب خدمت جناب استاد mazoolagh عزیز!
احسنت !
دست مریزاد !
انصافا بشخصه از دیدن این نمونه که خیلی ظریف و حرفه ای تهیه شده حسابی به وجد اومدم و خیلی لذت بردم .
آخرین ویرایش به وسیله eb_1345 : یک شنبه 13 اسفند 1402 در 05:30 صبح
با سلام و احترام
احسنت استاد
عالی بود
با تشکر از نظر لطف دوستان گرامی،
روش پیشنهادی جناب بهرامی (فیلد rich text) مزیت هایی داره که به این شکل و در این سناریو دیده نمیشه،
ولی پیاده کردن اون چندان راحت نیست.
اگر بتونم یک نمونه درست میکنم که این ویژگی رو نشون بده.
ولی بهتر هست برای آنالیز دیتاهای پردازش شده با اکسس، نتایج رو به اکسل بفرستیم که دست ما برای هر کاری در شکل دادن به اونها باز هست.