এবং ফাংশন খালি, ব্ল্যাক সেলের সত্য ফলাফল দেয় - কেন?


31

আমার কাছে ফাঁকা বি 2 সেল রয়েছে।

= ইসব্ল্যাঙ্ক (বি 2) সত্য দেয়

এটির উপর একটি সাধারণ যৌক্তিক পরীক্ষা মিথ্যা প্রত্যাবর্তন করে

= যদি (বি 2, সত্য, মিথ্যা) মিথ্যা দেয়

তবুও যখন কোনও এন্ড স্টেটমেন্টে সরাসরি ব্যবহৃত হয়, তখন এটি সত্য দেয়

= এবং (বি 2, সত্য) সত্য দেয়

অবশ্যই, যখন অপ্রত্যক্ষভাবে একটি অ্যান্ড স্ট্যাটামেন্টে ব্যবহৃত হয়, তখনও এটি মিথ্যা প্রত্যাবর্তন করে

= এবং (যদি (বি 2, সত্য, মিথ্যা), সত্য) মিথ্যা দেয়

আমার এক্সেল কেন সেভাবে আচরণ করে দয়া করে আমাকে ব্যাখ্যা করতে পারেন?

উত্তর:


41

এখান থেকে উত্তোলন করা হয়েছে , এক্সেল লজিক্যাল ফাংশন - তথ্য এবং পরিসংখ্যান শিরোনাম বিভাগটি সন্ধান করুন :

এক্সেলে আপনি যখন লজিক্যাল ফাংশন (এবং, এক্সওর, না, ওআর) ব্যবহার করছেন, কোনও যুক্তিটিতে যদি পাঠ্য মান বা খালি ঘর থাকে , যেমন মানগুলি উপেক্ষা করা হয়।


2
এই জানা মহান!!
গ্যারি এর ছাত্র

2
সম্ভবত আপনি প্রকাশের নিয়মটি জুড়ে দিতে পারেন IF(B2,TRUE,FALSE)? এছাড়াও, আমি আশা করি যে যুক্তিগতভাবে সঠিক (তবে একটি সামান্য পাল্টা-স্বজ্ঞাত) ফলাফল এবং খালি সেটগুলির সংযুক্তিগুলি ফিরে আসবে, অর্থাত্ মিথ্যা হলেও AND(B2)সত্য হবে OR(B2)তবে পরীক্ষাগুলি দেখায় যে তারা ত্রুটি ফিরে পেয়েছে।
পিজেট্রাইল

2
যদি আর্গুমেন্টগুলির মধ্যে কোনও না হলেও সমস্ত পাঠ্য মান বা খালি ঘর থাকে তবে এই জাতীয় মানগুলি উপেক্ষা করা হয়। তবে যদি সমস্ত আর্গুমেন্টে পাঠ্য মান বা খালি ঘর থাকে, ফাংশনটি #VALUE ফেরত দেয়!
থান্ডারফ্রেমে

ভাল উত্তর. @ থান্ডারফ্রেমের মন্তব্যটিও সর্বজনীন।
রায়স্টাফেরিয়ান

আরও একটি সতর্কতা আছে। একটি সেল রেফারেন্স হিসাবে পাঠ্য পাঠের মধ্যে একটি পার্থক্য রয়েছে, স্ট্রিং-আক্ষরিক হিসাবে পাঠ্যটির বিপরীতে। বিস্তারিত জানার জন্য আমার উত্তর দেখুন।
থান্ডারফ্রেম

6

টিএল; ডিআর - এটি কীভাবে এক্সেল অভ্যন্তরীণভাবে কোষের সামগ্রী সংরক্ষণ করে এবং আদান-প্রদান করে তার একটি নিদর্শন। একটি ফাঁকা ঘর হ'ল একটি ভেরিয়েন্ট, যার কোনও মূল্য নেই, যা প্রোগ্রামিং ভাষাগুলি শূন্য এবং শূন্য-না-মানের সত্যতার সাথে আচরণ করে বলে FALSE এ রূপান্তর করে।

আচরণকে AND()(এবং অন্যান্য যৌক্তিক ফাংশন সব) Booleans মধ্যে উভয় আর্গুমেন্ট রূপান্তর, তারপর একটি লজিক্যাল সঞ্চালন হয় andতাদের উপর অপারেশন। আপনি কভারগুলি খোসা ছাড়তে পারেন এবং ভিজ্যুয়াল বেসিক সম্পাদকের অবজেক্ট ব্রাউজার ব্যবহার করে এটি কীভাবে এক্সেল অবজেক্ট মডেলটিতে সংজ্ঞায়িত করা হয়েছে তা একবার দেখুন:

এবং অবজেক্ট ব্রাউজারে

নোট করুন এটি একটি Boolean, না একটি প্রদান করে Variant। এর অর্থ হল যে ফাংশনটি মূল্যায়নের প্রক্রিয়া চলাকালীন কোনও সময়ে সমস্ত যুক্তিগুলি Booleanএস-তে রূপান্তর করতে হবে । প্রকৃত পর্যবেক্ষণ আচরণটি ইঙ্গিত দেয় যে এটি প্রক্রিয়াজাতকরণের প্রথম দিকে সম্পন্ন হয়েছিল - এক্সেল সমস্ত আর্গুমেন্টকে রূপান্তর করার চেষ্টা করে এবং সফল হয় যদি গণনায় রূপান্তরিত মানগুলি ব্যবহার করে ব্যবহারকারী বান্ধব হওয়ার চেষ্টা করে । String"সত্য" এবং "মিথ্যা" ফাংশনে মানগুলি প্রেরণ করে এটি প্রদর্শিত হতে পারে :

=AND("true","true") <---Results in TRUE
=AND("false","true") <---Results in FALSE
Etc.

এটি সংখ্যাগত যুক্তি দিয়েও প্রদর্শিত হতে পারে - এটি কোনও শূন্য-মানকে সত্য এবং শূন্যকে মিথ্যা হিসাবে গণ্য করে:

=AND(42,-42) <---Results in TRUE
=AND(0,0) <---Results in FALSE
=AND(42,0) <---Results in FALSE
Etc.

সংমিশ্রণে এটির একই আচরণ রয়েছে:

=AND("false",0) <---Results in FALSE
Etc.

এতক্ষণে আপনার ছবিটি পাওয়া উচিত। সুতরাং এটি একটি ফাঁকা ঘর পরীক্ষা করার সাথে কীভাবে সম্পর্কিত? এর উত্তরটি কীভাবে এক্সেলের অভ্যন্তরীণভাবে কোনও ঘরের সামগ্রী সঞ্চয় করে in আবার, এক্সেল অবজেক্ট মডেল আলোকিত করছে:

অবজেক্ট ব্রাউজারে সেল মান

দ্রষ্টব্য যে এটি একটি COM বিভিন্ন কাঠামো । এই কাঠামোটিতে মূলত 2 টি অংশ রয়েছে - একটি প্রকার, যা কোডটি এটি কীভাবে ব্যাখ্যা করতে হয় তা ব্যবহার করে এবং একটি ডেটা অঞ্চল tells এক্সেলের কোনও সামগ্রী নেই এমন একটি ঘরে একটি "মান" থাকবে যা Variantউপ-প্রকারের সাথে একটি দ্বারা উপস্থাপিত হয় VT_EMPTY। আবার, এটি ম্যাক্রো দিয়ে নিশ্চিত করা যেতে পারে:

Sub DemoMacro()
    'Displays "True" if cell A1 on the active sheet has no contents.
    MsgBox Range("A1").Value2 = vbEmpty
End Sub

সুতরাং কি ঘটবে যখন ANDফাংশন একটি এ রূপান্তরBoolean ? ভাল প্রশ্ন! এটি মিথ্যা বলে মনে হয়, প্রোগ্রামিং ভাষাগুলি সাধারণত শূন্যকে কীভাবে আচরণ করে:

Sub DemoMacro2()
    MsgBox CBool(vbEmpty)
End Sub

পুরোপুরি যুক্তি বাদ দিয়ে আপনি একই আচরণটি দেখতে পাবেন :

=AND(,)

... একই জিনিস ...

=AND({vbEmpty},{vbEmpty})

... যা একই ...

=AND(0,0)

...যা হলো:

=AND(FALSE,FALSE)

1
কিন্তু ওপি রিপোর্ট করে যে একটি খালি সেল আর্গুমেন্ট সত্য হিসাবে ধরা হয়, (যেমন আপনি বলেন) মিথ্যা নয়।
নেকোমেটিক

@ নিউকোমেটিক - আমি সেই অংশটি মিস করেছি। সম্পাদনা আসছে।
Commtern

যদি এ 1 থাকে: TRUEএবং বি 1তে অ্যাডাস্ট্রোফের পূর্ববর্তী পাঠ্য রয়েছে: 'FALSEতবে =AND(A1,B1)সত্য প্রদান করে। mwa হা হা হা।
থান্ডারফ্রেম

এই ক্ষেত্রে সঠিক উত্তর নয়, তবে তবুও ফাংশন মূল্যায়নের একটি দুর্দান্ত সাধারণ ব্যাখ্যা। এই মন্তব্যটিকে +1 হিসাবে বিবেচনা করুন।
এমটোন

@ থান্ডারফ্রেম: আপনার বক্তব্য কী? যদি এ 1 থাকে TRUE, এবং বি 1 তে কোনও পাঠ্য মান থাকে (খালি স্ট্রিং সহ) , তবে =AND(A1,B1)ফেরত দেয় TRUE
স্কট

2

@ Jcbermu এর উত্তর সম্পর্কে আমার মন্তব্য অনুসারে, একটি ছোট সংশোধন সহ:

যদি কোনো কিন্তু সব না আর্গুমেন্ট টেক্সট ধারণ মান মধ্যে সেল মান বা ফাঁকা ঘর, এই ধরনের মান উপেক্ষা করা হয়। কিন্তু যদি শুধু আর্গুমেন্ট টেক্সট ধারণ মান মধ্যে সেল মান বা খালি কোষ, ফাংশন আয়#VALUE!

সংশোধন ইঙ্গিত সহ:

যদি এক বা একাধিক আর্গুমেন্ট কোনও সেল রেফারেন্সের বিপরীতে স্ট্রিং-আক্ষরিক থেকে পাঠ্য হয়, তবে ফলাফলটি হবে #VALUE!

মানে, যদি সেল A1মান "ABC", তারপরে হয়েছে =AND(A1,TRUE)আয় TRUE, কিন্তু =AND("abc",TRUE) আয় #VALUE!। নীচের চিত্রটিতে 9 থেকে 13 সারি দেখুন।

এখানে চিত্র বর্ণনা লিখুন

কিন্তু অচেনা হয়ে যায় ...

যদি কোনও যুক্তি ত্রুটি হয় ANDতবে প্রথম ত্রুটি ফিরে আসবে । ছাড়া , যদি কোনও আর্গুমেন্ট স্ট্রিং-আক্ষরিক হয়, তবে ফেরতের মান হয়#VALUE!

=AND(TRUE,TRUE,"abc") = #VALUE!

=AND(1/0,foo(),TRUE) = #DIV/0!

=AND(foo(),1/0,TRUE) = #NAME?

=AND(1/0,foo(),"abc",TRUE) = #VALUE!

=AND(foo(),1/0,"abc",TRUE) = #VALUE!


0

=ISBLANK(B2)
B2 খালি স্থান না থাকলে সত্য দেয়

=AND(B2,TRUE) হওয়া উচিত
=AND(B2="",TRUE)আপনি মান (B2 তে খালি আগমন সত্য) এবং 2nd যৌক্তিক সত্য লিখতে আছে এবং সত্য ফিরে আসবে
=IF(B2,TRUE,FALSE)হওয়া উচিত =IF(B2="",TRUE,FALSE)দেব সত্য
=AND(IF(B2,TRUE,FALSE),TRUE)হবে =AND(IF(B2="",TRUE,FALSE),TRUE)সত্য দেব
চেষ্টা সবসময় সব পরীক্ষা লিখতে হয় এবং এটি মনে করি না এক্সেল কি করতে হবে না। আপনার সূত্রগুলিতে
সর্বদা মনে রাখবেন Logical Test, বি 2-র জন্য পরীক্ষা না করে
কীভাবে এক্স ও অ্যান্ড ফাংশন ফাংশনটি ব্যবহার করতে হয়


8
আমি মনে করি আপনি ওপিএস পয়েন্ট মিস করেছেন। = ISBLANK (B2) কেবলমাত্র B2 সেল ফাঁকা রয়েছে তা প্রমাণ করার জন্য। = এবং (বি 2, সত্য) বলতে বোঝায় কোষ বি 2 এর বুলিয়ান মান পরীক্ষা করা। তারপরে যদি সত্যিকার অর্থে এই মূল্য নির্ধারণ করা হয় কেবলমাত্র সেল B2 সত্যের সাথে মূল্যায়ন করে। এরপরে এটি নিম্নলিখিত পরীক্ষার সাথে বিপরীত, = আইএফ (বি 2, সত্য, মিথ্যা) মিথ্যা ফিরছে। এটি একটি দুর্দান্ত প্রশ্ন কারণ আমি জানতাম না এক্সেল কিছু বেলিয়ান মানকে (সত্য বা মিথ্যা) মূল্যায়ন না করে কিছু ঘরের মূল্যবোধ উপেক্ষা করে।
linhartr22

6
কেন এই upvated হয়? AND(B2,TRUE)অবশ্যই AND(B2="",TRUE)প্রশ্নের প্রসঙ্গে থাকা উচিত নয় ।
দিমিত্রি গ্রিগরিয়েভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.