توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : پرسش: شمارش و مقایسه یک محدوده از سلول با سلول های دیگر
سلام وقت بخیر
لطفا راهنمایی کنید من 8 تا سلول دارم که به این ترتیب می خوام هنگامی که داخلشون اطلاعات وارد شد بشمارم
شرط اول : اگر فقط در سلول شماره 1 اطلاعات وارد شد عدد یک تو یه سلول دیگه ای عدد یک نمایش بده
شرط دوم : اگر در سلول شماره 1 و سلول 2 تا 8 دیتا وارد شد تو یه سلول دیگه ای عدد یک رو نمایش بده
شرط سوم : اگر فقط در سلول 2 تا 8 دیتا وارد شد تو یک سلول دیکه ای عدد یک رو نمایش بده
با سلام
به ترتیب از فرمول های زیر استفاده کنید.
=if(and(a1<>"";countblank(a2:a8)=7);1;"")
=if(countblank(a1:a8)<1;1;"")
=if(and(a1="";countblank(a2:a8)=0);1;"")
با سلام
به ترتیب از فرمول های زیر استفاده کنید.
=if(and(a1<>"";countblank(a2:a8)=7);1;"")
=if(countblank(a1:a8)<1;1;"")
=if(and(a1="";countblank(a2:a8)=0);1;"")
از راهنماییتون واقعا ممنونم در خصوص شرط دوم و سوم یه توضیح بدم
در خصوص شرط دوم : حتما سلول 1 باید دیتا داشته باشه و از سلول 2 تا 8 یا همشون تکمیل باشه یا ما بینشون خالی هم بمونه در این صورت عدد یک نشون بده الان فرمولی که شما لطف کردید حتما باید همشون تکمیل باشن تا 1 نشون بده
در خصوص شرط سوم : حتما سلول 1 باید خالی باشه و از سلول 2 تا 8 مثل شرط دوم بود عدد 1 نمایش بده
بازم ممنون از راهنماییتون
iranweld
2016/09/06, 11:41
با سلام
فرمول اصلاح شد
شرط دوم
=if(and(a1<>"",countblank(a2:a8)>0,countblank(a2:a8)<7),1,"")
شرط سوم
=if(and(a1="",countblank(a2:a8)>0,countblank(a2:a8)<7),1,"")
با سلام
فرمول اصلاح شد
شرط دوم
=if(and(a1<>"",countblank(a2:a8)>0,countblank(a2:a8)<7),1,"")
شرط سوم
=if(and(a1="",countblank(a2:a8)>0,countblank(a2:a8)<7),1,"")
واقعا ممنونم کاش می شد 100 بار دکمه تشکر زد
بازم ممنون
اگر سوال جدیدی داشتم پست جدید بزنم ؟ یا در ادامه این مطلب همینجا می تونم بپرسم ؟؟؟؟
iranweld
2016/09/06, 12:37
اگر سوال جدیدی داشتم پست جدید بزنم ؟ یا در ادامه این مطلب همینجا می تونم بپرسم ؟؟؟؟
اگر در مورد موضوع این پست میباشد همینجا ادامه دهید و اگر موضوع فرق مینماید پست جدید ایجاد کنید
در رابطه با شرط سوم
=if(and(f8=""؛countblank(g8:m8)>0؛countblank(g8:m8)<7)؛1؛"")
در شرط سوم مشخص شد که اگر در هر یک از سلولهای 2 تا 8 دیتا وارد شد عدد 1 توی سلول دیگه نمایش بده
حالا در این خصوص می خوایم یک شرط دیگه بزاریم که اگر شرایط سوم برقرار بود و عدد یک در سلول مربوطه نشون داد حتما باید از محدوده ده سلول دیگه که مورد نظرمون هست در یکی از سلول ها حتما دیتا وارد بشه اگر نشد پیغام بده و رنگ اون محدوده 10 سلول مورد نظر هم به قرمز تغییر کنه
یعنی اگر داخل سلول A1 عدد 1 بود حتما در محدوده a10:a20 سلول مورد نظر حتما حداقل یک سلولش باید تکمیل بشه در غیر اینصورت پیغام بده و رنگ اون محدوده 10 سلول تغییر کنه
اگر شرط سوم برقرار بود تا زمانی هم که حداقل یکی از اون محدوده 10 تا رو تکمیل نکنه نتونه بره ستون بعدی
بازم ممنون
iranweld
2016/09/06, 13:20
در فایل پیوست دو شرط موجود در سلولهای h1 و h2 در کاندیشنال فرمتینگ اعمال گردید.
در صورتیکه شرط برقرار نباشد سلولها قرمز شده و در صورت برقراری شرط آبی میگردد
12558
در فایل پیوست دو شرط موجود در سلولهای h1 و h2 در کاندیشنال فرمتینگ اعمال گردید.
در صورتیکه شرط برقرار نباشد سلولها قرمز شده و در صورت برقراری شرط آبی میگردد
12558
واقعا ممنونم از لطفتون منتهی منظورم این نبود منظورم عکس زیر بود
12559
با سلام
فایل پیوستی را ملاحظه کنید.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim s As Variant
If Intersect(Target, Range("C2:N2")) Is Nothing Then Exit Sub
If Range("a1").Value = 1 Then
If Target.Application.CountBlank(Range("C2:N2")) < 11 Then
Range("c" & Target.Row, Range("n" & Target.Row)).Interior.ColorIndex = 0
MsgBox " ÔãÇ ãÌÇÒ Èå Ñ ˜ÑÏä í˜ Óáæá ãíÈÇÔíÏ."
Target.Value = ""
Exit Sub
ElseIf Target.Application.CountBlank(Range("c2:n2")) > 11 Then
Range("c" & Target.Row, Range("n" & Target.Row)).Interior.ColorIndex = 3
MsgBox "ÈÇíÏ í˜ Óáæá ÑÇ Ñ ˜äíÏ"
Exit Sub
End If
End If
Range("c" & Target.Row, Range("n" & Target.Row)).Interior.ColorIndex = 0
End Sub
با سلام
فایل پیوستی را ملاحظه کنید.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim s As Variant
If Intersect(Target, Range("C2:N2")) Is Nothing Then Exit Sub
If Range("a1").Value = 1 Then
If Target.Application.CountBlank(Range("C2:N2")) < 11 Then
Range("c" & Target.Row, Range("n" & Target.Row)).Interior.ColorIndex = 0
MsgBox " ÔãÇ ãÌÇÒ Èå Ñ ˜ÑÏä í˜ Óáæá ãíÈÇÔíÏ."
Target.Value = ""
Exit Sub
ElseIf Target.Application.CountBlank(Range("c2:n2")) > 11 Then
Range("c" & Target.Row, Range("n" & Target.Row)).Interior.ColorIndex = 3
MsgBox "ÈÇíÏ í˜ Óáæá ÑÇ Ñ ˜äíÏ"
Exit Sub
End If
End If
Range("c" & Target.Row, Range("n" & Target.Row)).Interior.ColorIndex = 0
End Sub
سلام بازم ممنون
یک سوال در اون محدوده هر چیزی وارد کنم دیگه اخطار نمیده یا فقط باید عدد وارد بشه ؟
چون اطلاعت من عدد هست که باید وارد بشه
سوال دوم هم اینکه حالا میشه گفت اگر در این محدوده مثلا a1:a30 عدد 1 بود یکی از سلول های محدوده a30:a40 باید تکمیل بشه ؟
با سلام
ک سوال در اون محدوده هر چیزی وارد کنم دیگه اخطار نمیده یا فقط باید عدد وارد بشه ؟
چون اطلاعت من عدد هست که باید وارد بشه
مهم نیست فقط باید کاراکتر وارد بشه که خالی نباشه .
برای سوال دوم کد زیر را در شیت دوم قرار دادم ملاحظه کنید.
در صورتی که عدد 1 در محدوده مشخص وارد بشه یک پیغام میده.
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:A30")) Is Nothing Then Exit Sub
If Target.Value = 1 Then
MsgBox "í˜í ÇÒ Óáæá åÇí ãÍÏæÏå a30:a40 ÈÇíÏ Ê˜ãíá ÔæÏ."
End If
End Sub
با سلام
مهم نیست فقط باید کاراکتر وارد بشه که خالی نباشه .
برای سوال دوم کد زیر را در شیت دوم قرار دادم ملاحظه کنید.
در صورتی که عدد 1 در محدوده مشخص وارد بشه یک پیغام میده.
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:A30")) Is Nothing Then Exit Sub
If Target.Value = 1 Then
MsgBox "í˜í ÇÒ Óáæá åÇí ãÍÏæÏå a30:a40 ÈÇíÏ Ê˜ãíá ÔæÏ."
End If
End Sub
12577
حالا این تو ردیف های پایین هم تکرار میشه 60 تا ردیف داره
شیت 3 فایل پیوستی را ملاحظه کنید به محض ورود عدد 1 پیغامی مبنی بر نوشتن عدد یک در محدوده مشخص داده میشود.
شیت 3 فایل پیوستی را ملاحظه کنید به محض ورود عدد 1 پیغامی مبنی بر نوشتن عدد یک در محدوده مشخص داده میشود.
واقعا ازتون ممنونم که برای من وقت می گذاشتین نمیدونم چطور باید تشکر کنم
الان شما فرمودید که به محض ورود عدد 1 پیغام میده
عدد یک بر اساس فرمول قبلی که فرموده بودید توی اون سلول وارد میشه
=if(and(f8=""؛countblank(g8:m8)>0؛countblank(g8:m8)<7)؛1؛"")
الان فرومول که بر میدارم بطور دستی 1 میزارم پیغام میاد ولی فرمول که میزارم نمیاد
ببخشید من دونه به دونه سوال میپرسم چون کاری که دارم انجام میدم مرتبت به هم دیگس
ببینید به دلیل اینکه از رویداد change استفاده کردیم باید اون سلول تغییر کنه که دستور اجرا بشه.حالا چون سلول حاوی فرمول داخل تغییر میکنه باید سلول رو انتخاب کنیم تا دستور اجرا بشه.
به خط اول عبارت Selection رو اضافه کنید و بعد بر روی سلولی که عدد یک هست کلیک کنید.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ببینید به دلیل اینکه از رویداد change استفاده کردیم باید اون سلول تغییر کنه که دستور اجرا بشه.حالا چون سلول حاوی فرمول داخل تغییر میکنه باید سلول رو انتخاب کنیم تا دستور اجرا بشه.
به خط اول عبارت Selection رو اضافه کنید و بعد بر روی سلولی که عدد یک هست کلیک کنید.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ارور داد بازم اجرا نشد :min17:
1258012581
شیت 3 را ملاحظه کنید.
بازم ارور میده
فایل اصلی اکسل براتون ایمیل کردم
12585
اگر بخوام همین شرط رو برای ردیف های پایینی هم اعمال بشه چکار باید بکنم ؟
بازم ارور میده
فایل اصلی اکسل براتون ایمیل کردم
12585
بدلیل اینکه سلول های q7:q12 رو merge کردید.
از حالت merge خارج کنید و نتیجه را ملاحطه کنید.
بدلیل اینکه سلول های q7:q12 رو merge کردید.
از حالت merge خارج کنید و نتیجه را ملاحطه کنید.
اگر از حالت merge خارج کنم کل فرم بهم میخوره امتهان کردم بازم نشد
به نظرتون چکار کنم ؟
اگر بخوام همین شرط رو برای ردیف های پایینی هم اعمال بشه چکار باید بکنم ؟
If Intersect(Target, Range("Q7:Q426")) Is Nothing Then Exit Sub
اگر از حالت merge خارج کنم کل فرم بهم میخوره امتهان کردم بازم نشد
به نظرتون چکار کنم ؟
تا حد امکان از merge کردن سل ها باید خودداری کرد اگر اصرار به merge کردن سل دارید باید ازدکمه (Button) برای اجرا استفاده کنید.
vBulletin® v4.2.5, Copyright ©2000-2024, Jelsoft Enterprises Ltd.