با توجه به فایل ارسالی فایل تغیر داده شده رو ارسال کردم.اگر مشکلی نبود تک حل شده رو بزنید.
سوال درباره اضافه کردن صفر به سمت چپ اعداد
Collapse
X
-
البته دو تا فرمول را مي شود يکي کرد، من فقط در دو ستون نوشتم که بهتر متوجه بشيد، ترکيب آنها (براي خانه A1) ميشود اين:
کد PHP:=MID(IF(LEN(A1)<8;REPT(0;8-LEN(A1))&A1;A1);3;4)
تابع REPT يک عبارت را به تعداد مورد نظر ما تکرار مي کند.
تابع MID در يک سلول از کاراکتر N ام شروع به شمردن کرده و به تعداد X کاراکتر را جدا مي کند. (N و X را ما تعيين مي کنيم)
عبارت & چند عبارت را با هم ترکيب مي کند
تابع IF هم که يک تابع شرطي است و مي گويد که اگر شرط فلان برقرار بود عمل "فلان" را انجام بده وگرنه فلان کار ديگر را انجام بده.
بنابراين ما اول طول A1 را به دست مي آوريم:
کد PHP:LEN(A1)
کد PHP:8-LEN(A1)
کد PHP:REPT(0;8-LEN(A1))
کد PHP:REPT(0;8-LEN(A1))&A1
کد PHP:IF(LEN(A1)<8;REPT(0;8-LEN(A1))&A1;A1)
کد PHP:=MID(IF(LEN(A1)<8;REPT(0;8-LEN(A1))&A1;A1);3;4)
Last edited by Ali Parsaei; 2016/01/18, 20:39.[SIGPIC][/SIGPIC]کامنت
-
توضیحات مفصل جناب علي پارسا گرامی جایی برای بحث نزاشته فقط بابت سوال تون ، تو فایل ارسالی به این صورت میشه.
کد PHP:=IF(LEN(K6*K6)<8;0&MID(K6*K6;1;3);MID(K6*K6;1;4))
[SIZE=7][B][COLOR=navy][FONT=IranNastaliq]ای برادر تو همه اندیشه ای[/FONT][/COLOR][/B][/SIZE]کامنت
-
توضیحات مفصل جناب علي پارسا گرامی جایی برای بحث نزاشته فقط بابت سوال تون ، تو فایل ارسالی به این صورت میشه.
کد PHP:=IF(LEN(K6*K6)<8;0&MID(K6*K6;1;3);MID(K6*K6;1;4))
متوجه نشدین اون 8 عدد از حاصل ضرب 2 عدد بدست میاد یعنی قبلش باید ضرب رو انجام بدم بعدش عمل اضافه کردن صفر رو انجام بدم و جدا کردن عدد داخل یه سل دیگه انجام میشهکامنت
-
-
دوستان من تنها یک مشکل دارما الان سه روزه منتظر جواب هستم همه رو یاد گرفتم فقط میخوام تمامش کنم درگیرش هستم فقط میخوام بدونم چطوری دستوری که جناب پارسا گفتن با دستور ضرب در داخل یک سل ترکیب کنم مثلا داخل یک سل دستور a1*b1= رو انجام دادم میخوام همراه همین دستور ضرب، دستور علی پارسا رو ترکیب کنم که جواب بدست آمده از حاصل ضرب با دستور علی پارسا ترکیب کنم که اگه جواب ضرب از 8 رقم کمتر بود بهش به اندازه که حاصل ضرب عدد کم داره صفر اضافه بشم برای این عمل یعنی اضافه کردن صفر که علی پارسا گفت برا ضرب هم دستورشو دارم فقط چطوری داخل یک سل این دو دستور رو ترکیب کنم؟کامنت
-
با سلام
این فرمول رو تست کنید .ضرب a1 در b1 که اگر تعداد ارقام حاصل کمتر از 8 بود به تعداد نیاز تا عدد 8 ،صفر اضافه میشود.
کد PHP:=IF(LEN(A1*B1)<8;REPT(0;8-LEN(A1*B1))&A1*B1;A1*B1)
[SIZE=7][B][COLOR=navy][FONT=IranNastaliq]ای برادر تو همه اندیشه ای[/FONT][/COLOR][/B][/SIZE]کامنت
-
البته آقاي امير خان دو بار برايتان توضيح داده اند، ولي فکر کنم خيلي توجيه نشده ايد، با اجازه ايشان من هم يک کم بيشتر توضيح مي دهم،
ببينيد اصول کلي اش اين است:
فرض کنيد يک فرمول داريم که عملياتي روي محتواي سل a1 انجام مي دهد مثل فرمول زير:
کد PHP:=mid(if(len(a1)<8;rept(0;8-len(a1))&a1;a1);3;4)
فرضا" فرمول زير:
کد PHP:=mod(b1*c1;d1)
حالا مشکل شما اين است که مي خواهيد اين دو تا را با هم ترکيب کنيد، در چنين حالتي بايد هرجا که در فرمول اول به سل a1 اشاره شده به جايش عينا" فرمول نوشته شده در خانه a1 را بنويسيد (البته بدون علامت مساوي) مي شود اينطور:
کد PHP:=mid(if(len(mod(b1*c1;d1))<8;rept(0;8-len(mod(b1*c1;d1)))&mod(b1*c1;d1);mod(b1*c1;d1));3;4)
[SIGPIC][/SIGPIC]کامنت
-
کد PHP:=if(len(b2*c2)<8;rept(0;8-len(b2*c2));b2*c2)
کامنت
-
ولی الان میخوام 2 سل متفاوت با دو مقدار متفاوت انجام بدم مقدار صفر رو برمیگردونه از این دستور برا این کار استفاده میکنم :کد PHP:=if(len(b2*c2)<8;rept(0;8-len(b2*c2));b2*c2)
فرمول رو به این صورت بنویسید:
کد PHP:=IF(LEN(B2*C2)<8;REPT(0;8-LEN(B2*C2))&B2*C2;B2*C2)
[SIZE=7][B][COLOR=navy][FONT=IranNastaliq]ای برادر تو همه اندیشه ای[/FONT][/COLOR][/B][/SIZE]کامنت
کامنت