খালি মান না দিয়ে সারিগুলি গণনা করুন


128

গুগল স্প্রেডশিটে: আমি কীভাবে একটি নির্দিষ্ট অঞ্চলের সারিগুলি গণনা করতে পারি? এই সম্পর্কে সমস্ত ইঙ্গিত আমি এখন পর্যন্ত সূত্রগুলিতে নিয়েছি যা এমন সারিগুলি গণনা করে যা খালি সামগ্রী নয় (সূত্র সহ), তবে একটি ঘর সহ

=IF(1=2;"";"")  // Shows an empty cell

পাশাপাশি গণনা করা হয়।

এই সাধারণ কাজের সমাধান কী?


6
কাউন্টা আপনার জন্য কাজ করবে না? : এছাড়াও এই তাই থ্রেড দেখুন stackoverflow.com/questions/12519073/...
Ozair Kafray


উত্তর:


-12

"কাউন্টব্ল্যাঙ্ক" ফাংশনটি ব্যবহার করে রেফারেন্সড সেল ফাঁকা কিনা তা নির্ধারণ করে এমন একটি আর কলাম তৈরি করুন। তারপরে নতুন "কাউন্টব্ল্যাঙ্ক" কলামে তৈরি মানগুলিতে গণনা ব্যবহার করুন।


3
আমি এটিকে একটি পরিষ্কার বক্তব্য হিসাবে বিবেচনা করি যে এর কোনও সমাধান নেই। আপনাকে অনেক ধন্যবাদ.
রবিট

যখন আপনাকে অন্য কলাম যুক্ত করতে হবে, আপনি প্রায় সর্বদা কিছু অতিরিক্ত সূত্র ব্যবহার করে যেমন কিছুটা কনটিনিট / স্প্লিট / জয়েন ইত্যাদি ব্যবহার করে সমাধান করতে পারেন, যদি আমি এটি সমাধান করি তবে অসুস্থ আপনার কাছে ফিরে আসবেন।
বিবেচ্য অনুপাত 23

উদাহরণস্বরূপ, নীচের লাইনটি 2 ডি পরিসরের কোষগুলির মধ্যে একটি একক সারি তৈরি করে, যা প্রায়শই প্রচুর সমস্যার সমাধান করতে পারে: = বিভাজন (অ্যারেফর্মুলা (কনটেনেট (সি 3: ও 4 & ";")), ";") --- - অসুস্থ সমস্যা সমাধানে কাজ চালিয়ে যান
অনুপাত

আমি একটি উত্তর পোস্ট করেছি যা পৃথক কলামগুলিতে নির্ভর না করেই লক্ষ্যটি সমাধান করে
বিবেচনা করুন

203

আমি সবেমাত্র ব্যবহার করেছি =COUNTIF(Range, "<>")এবং এটি আমার জন্য খালি খালি ঘর গণনা করেছে।


14
দুর্ভাগ্যক্রমে, এই সূত্রটি ফাঁকা ফলাফলের সূত্রগুলির সাথে কক্ষগুলিও গণনা করে।
ডেভিড ভেসেলোভস্কি

23
আমার কাছে @ ডেভিডভেসেলোভস্কি [সূত্র গণনা করা হয়েছে] হিসাবে একই সমস্যা ছিল। আমি সমাধান করেছি=COUNTIF(Range,"?*")
শাওনরাড

প্রশ্নটি জিজ্ঞাসা করছে কিভাবে একটি সীমাতে সারিগুলি গণনা করতে হয়। আপনি একটি পরিসীমা কক্ষ গণনা করছেন?
আনানফায়

124
=counta(range) 
  • counta: " একটি ডেটাসেটের মান সংখ্যার একটি গণনা প্রদান করে "

    দ্রষ্টব্য: একটি মান হিসাবে CountAবিবেচনা ""করে । কেবলমাত্র কোষগুলি ফাঁকা (এটিকে ফাঁকা করার জন্য একটি ঘরে মুছুন চাপুন) গণনা করা হয় না।

    গুগল সমর্থন: https://support.google.com/docs/answer/3093991

  • countblank: " প্রদত্ত পরিসরে খালি ঘরগুলির সংখ্যা প্রদান করে"

    দ্রষ্টব্য: CountBlankফাঁকা ঘরগুলি (কোনও ঘর ফাঁকা করার জন্য মুছুন টিপুন) এবং যে সূত্রগুলি খালি কোষে ফিরে ""আসে সেগুলি উভয় বিবেচনা করে।

    গুগল সহায়তা: https://support.google.com/docs/answer/3093403

যদি আপনার এমন এমন একটি পরিসীমা থাকে যাতে এর সূত্র অন্তর্ভুক্ত থাকে ""তবে আপনি আপনার সূত্রটি পরিবর্তন করতে পারেন

=counta(range)

প্রতি:

=Counta(range) - Countblank(range)

সম্পাদনা: ফাংশনটি countblankনয় countblanks, তবে পরবর্তীটি একটি ত্রুটি দেবে।


5
দুর্ভাগ্যক্রমে, এটি উভয় ভার্জিন ফাঁকা এবং গণনা করা ফাঁকা জায়গাগুলির জন্য কাজ করে না। (এটি COUNTA এর মান থেকে অ-গণনা করা ভার্জিন ফাঁকা বিয়োগ করে))
ডেভিড ভেসেলোভস্কি

3
মিষ্টি নিম্নোক্তদের জন্য ধন্যবাদ, ওপি বিশেষত উল্লেখ করেছে যে তার ফাঁকা থাকার কারণটি হল = আইএফ (1 = 2; ""; "") এর মতো সূত্র, এবং আমি বিশেষভাবে উল্লেখ করেছি: "যদি আপনার সূত্র অন্তর্ভুক্ত থাকে তবে "" ... "
ডেল্টা_জুলু

প্রশ্নটি জিজ্ঞাসা করছে কিভাবে একটি সীমাতে সারিগুলি গণনা করতে হয়। আপনি একটি পরিসীমা কক্ষ গণনা করছেন?
আনানফায়

38

আমি যা বিশ্বাস করি তা এখন পর্যন্ত সেরা সমাধান:

=CountIf(ArrayFormula(range<>""),TRUE)

3 টি সহজ ধাপে এখানে

পদক্ষেপ 1: পাই হিসাবে সহজ - অতিরিক্ত কলাম যুক্ত করুন

EniacAvenger দ্বারা উত্তর হিসাবে প্রান্ত মামলা সম্পর্কে উদ্বেজক ছাড়া সঠিক সমাধান সমর্পণ করা হবে =A1<>""কিভাবে আমরা intuitively, খালি কক্ষের মনে উপর ভিত্তি করে সঠিক truthy / falsy মান উতরান বলে মনে হয়, হয় কুমারী ঐ খালি অথবা তৈরি ঐ খালি।

সুতরাং কল্পনা করুন যে আমাদের কাছে এই ডেটা রয়েছে এবং আমরা নন-ফাঁকা গণনা এটিতে চাই B2:B6:

|   |      A      |   B   |    C    |
|---|-------------|-------|---------|
| 1 | Description | Value | B1<>""  |
| 2 | Text        | H     | TRUE    |
| 3 | Number      | 1     | TRUE    |
| 4 | IF -> ""    |       | FALSE   |
| 5 | IF -> Text  | h     | TRUE    |
| 6 | Blank       |       | FALSE   |

আমরা যদি কলাম সি'র উপর নির্ভর করি তবে আমরা বি এর মতো মানগুলি গণনা করতে পারতাম:

=COUNTIF(C2:C6,True)

পদক্ষেপ 2: FormulaArrayগতিশীলভাবে অতিরিক্ত কলাম তৈরি করতে ব্যবহার করুন

তবে, রেশিওর মন্তব্যটি একটি বৈধ একটি - আপনার যদি অতিরিক্ত কলামের প্রয়োজন হয় তবে আপনি প্রায়শই একই লক্ষ্যটি অর্জন ArrayFormulaকরতে পারেন যা শীটের স্থান না খেয়ে স্মৃতিতে একটি কলাম তৈরি করতে পারে।

সুতরাং আমরা যদি গতিশীল সি তৈরি করতে চাই, আমরা এই জাতীয় অ্যারে সূত্রটি ব্যবহার করতে পারি:

=ArrayFormula(B2:B6<>"")

যদি আমরা এটি সহজভাবে সি 2 এ রাখি তবে এটি কলমের একক স্ট্রোকের সাথে উল্লম্ব অ্যারে তৈরি করবে:

|   |      A      |   B   |    C                     |
|---|-------------|-------|--------------------------|
| 1 | Description | Value | =ArrayFormula(B2:B6<>"") |
| 2 | Text        | H     | TRUE                     |
| 3 | Number      | 1     | TRUE                     |
| 4 | IF -> ""    |       | FALSE                    |
| 5 | IF -> Text  | h     | TRUE                     |
| 6 | Blank       |       | FALSE                    |

পদক্ষেপ 3: গতিশীল কলামে মান গণনা

তবে এটি সমাধান হয়ে গেলে কেবলমাত্র মানগুলি প্রদর্শনের জন্য আমাদের আর কলামের প্রয়োজন নেই।

ArrayFormulaনিম্নলিখিত পরিসরের সমাধান হবে: {True,True,False,True,False}
CountIfকেবল যে কোনও সীমার মধ্যে নেয় এবং এক্ষেত্রে সত্য মানের সংখ্যা গণনা করতে পারে।

সুতরাং আমরা এর CountIfদ্বারা উত্পাদিত মানগুলি চারপাশে গুটিয়ে রাখতে পারি ArrayFormula:

=CountIf(ArrayFormula(B2:B6<>""),TRUE)

আরও পড়া

এই থ্রেডের অন্যান্য সমাধানগুলি অত্যধিক জটিল, বা নির্দিষ্ট প্রান্তের ক্ষেত্রে ব্যর্থ হয়েছে যা আমি এই পরীক্ষার শীটে প্রকাশ করেছি:

গুগল স্প্রেডশিট - কাউন্টা টেস্ট - ডেমো

কেন CountAএটি অদ্ভুতভাবে কাজ করে তার জন্য, আমার উত্তরটি এখানে দেখুন


4
এই উত্তরটি একমাত্র সম্পূর্ণ সমাধান: উত্পন্ন ফাঁকা, সত্যিকারের শূন্য ঘর এবং ত্রুটিগুলি বাদ দিয়ে (# এন / এ, # আরএফ !, # ভ্যালু) কেবলমাত্র পাঠ্য (স্থান সহ), সংখ্যা এবং সত্য / মিথ্যা মান সহ সফলভাবে এটি কেবল ঘরগুলি গণনা করে ( , #NAME?)। এটি 0 ফিরে আসবে যেখানে কোনও মান নেই
স্পেসপিকল

2
আমি এটি পড়ে কিছুটা বিভ্রান্ত হয়ে পড়েছিলাম, এবং ঘটনাক্রমে আবিষ্কার করেছি যে এই সূত্রটিও খুব কার্যকর হয় ... = কাউন্টিফ (অ্যারেফর্মুলা (বি 2: বি 6 <> ""), সত্য) ... দয়া করে আমাকে ভুল করবেন না, এই উত্তরটি সেরাটি, এবং আরও উত্সাহ দেওয়া উচিত।
twindham

2
@ দ্বিধাম, সম্মত হয়েছেন যে এই উত্তরের ব্লকগুলি তৈরির ক্ষেত্রে যে প্রতিটি প্রস্তাবিত উপাদানকে অক্ষত রাখা এবং আপনার পরামর্শ ArrayFormula(...)অনুসারে মানগুলির অ্যারে ফিরিয়ে আনতে পুনরায় অর্ডার করা সম্ভবত সহজতর CountIf। আমি উত্তর এবং স্প্রেডশিট ডেমো আপডেট করেছি। তারা উভয়ই একই কাজ করবে, তবে পরিচ্ছন্নতা মঙ্গলতার পরে।
কাইলমিট

প্রশ্নটি জিজ্ঞাসা করছে কিভাবে একটি সীমাতে সারিগুলি গণনা করতে হয়। আপনি কি একটি একক কলামে খালি ফাঁকা ঘর গণনা করছেন? আপনার পন্থা একাধিক কলামে কাজ করতে পারে?
আনানফায়

19

আমার জন্য, উত্তরের কোনও উত্তরই রেঞ্জের জন্য কাজ করেনি যার মধ্যে ভার্জিন কোষ এবং কোষ উভয়ই অন্তর্ভুক্ত যা কোনও সূত্রের উপর ভিত্তি করে খালি (যেমন =IF(1=2;"";""))

আমার জন্য এটি কী সমাধান করেছে তা হ'ল:

=COUNTA(FILTER(range, range <> ""))


যদি কলামে এমন ফর্মুলু থাকে যা "" মান দেয় তবে দুর্দান্ত সমাধান! অনেক অনেক ধন্যবাদ
ব্যবহারকারী 1561325

দুর্ভাগ্যক্রমে, দেখে মনে হচ্ছে যে Filter()কোনও উপাদান না পেলে, এটি ফিরে আসবে #N/Aযা কোন উপাদান COUNTA()হিসাবে বিবেচনা করে এবং তাই সর্বদা 1 ফেরত আসবে, এমনকি গণনাটি শূন্য হওয়া উচিত। গুগল
শিটের

7
@ কাইলমিট আপনি পরিসীমাটিতে একটি ধ্রুবক মান যুক্ত করে এবং গণনা থেকে ১ টি বিয়োগ করে শূন্য গণনা ইস্যু থেকে মুক্তি পেতে পারেন=COUNTA(filter({1;range},{1;range}<>"")) - 1
স্পেসপিকল

প্রশ্নটি জিজ্ঞাসা করছে কিভাবে একটি সীমাতে সারিগুলি গণনা করতে হয়। আপনি একটি পরিসরে সেলগুলি গণনা করছেন। আপনি যদি সারিগুলির একটি ব্যাপ্তিতে এটি প্রয়োগ করার চেষ্টা করেন তবে এই কোডটি ভেঙে যায়।
21:

9

সমাধানটি সমাধান করে আমি যোগী আনন্দ দ্বারা গুগলিং খুঁজে পেয়েছি: https://productforums.google.com/d/msg/docs/3qsR2m-1Xx8/sSU6Z6NYLOcJ

নীচের উদাহরণটি A3: C এর পরিসরে খালি খালি সারির সংখ্যা গণনা করেছে, আপনার আগ্রহের সীমার সাথে সূত্রের উভয় রেঞ্জ আপডেট করতে ভুলবেন না।

=ArrayFormula(SUM(SIGN(MMULT(LEN(A3:C), TRANSPOSE(SIGN(COLUMN(A3:C)))))))

বিজ্ঞপ্তি নির্ভরতা এড়াতেও নিশ্চিত করুন, যদি আপনি উদাহরণস্বরূপ এ: সিতে শূন্য নয় এমন সারিগুলির সংখ্যা গণনা করেন এবং এই সূত্রটি এ বা সি কলামে রাখেন তবে এটি ঘটবে।


1
অনেক ক্লিনার সমাধান পেয়েছি, আমি এটি একটি নতুন উত্তর হিসাবে পোস্ট করেছি।
ডেভিড ভেসেলোভস্কি

1
একমাত্র সমাধান যা অনাবৃত ফাঁকা ঘর সহ সারিগুলির সংখ্যা গণনা করতে এবং কোনও পরিসরে খালি খালি ঘরগুলির সংখ্যা গণনা না করে প্রশ্নের উত্তর দেয়।
কেপিএম

7

এটি আমার পক্ষে কাজ:

=SUMPRODUCT(NOT(ISBLANK(F2:F)))

এফ 2 থেকে কলামের শেষ অবধি সমস্ত খালি খালি ঘরগুলির গণনা


5

পরিসর দেওয়া A:A, আইডির পরামর্শ:

=COUNTA(A:A)-(COUNTIF(A:A,"*")-COUNTIF(A:A,"?*"))

সমস্যাটি হ'ল শূন্য দৈর্ঘ্যের স্ট্রিং সহ কক্ষের সংখ্যা অনুসারে COUNTA ওভার গণনা ""

সমাধানটি হ'ল এই কোষগুলির একটি গণনা সন্ধান করা। এটি সমস্ত পাঠ্য কক্ষ অনুসন্ধান করে এবং কমপক্ষে একটি অক্ষরযুক্ত সমস্ত পাঠ্য কক্ষ বিয়োগ করে সন্ধান করা যেতে পারে

  • COUNTA (A: A): ""সত্যিকারের খালি ঘরগুলি বাদ দিয়ে তবে মান সহ ঘরগুলি
  • COUNTIF (A: A, "*"): ""প্রকৃত ফাঁকা ঘরগুলি সহ বা বাদ দিয়ে পাঠ্য হিসাবে স্বীকৃত ঘরগুলি
  • COUNTIF (A: A, "? *"): কমপক্ষে একটি অক্ষরযুক্ত কক্ষগুলি পাঠ্য হিসাবে স্বীকৃত

এর অর্থ হ'ল মানটি COUNTIF(A:A,"*")-COUNTIF(A:A,"?*")এমন পাঠ্য কক্ষের সংখ্যা হতে হবে যেখানে পাঠ্য কক্ষের সংখ্যা কমপক্ষে একটি অক্ষর থাকা উচিত""


@ কাইলমিট ডেমো শিট ব্যবহার করে, আমি এই সূত্রটি এখনও গণনার চেয়ে বেশি পেয়েছি কারণ এতে কোনও ত্রুটিযুক্ত কোষ অন্তর্ভুক্ত থাকবে
স্পেসপিকল

একটি শূন্য দৈর্ঘ্যের স্ট্রিং এবং এমন কোনও কক্ষের মধ্যে কোনও পার্থক্য নেই যার মধ্যে কিছুই নেই? এটিই মানুষকে অবিশ্বাস্য কম্পিউটার তৈরি করে। । । আপনি দেখতে পাচ্ছেন যে কেন আমাদের সুন্দর জিনিস থাকতে পারে না?
চিজো

প্রশ্নটি জিজ্ঞাসা করছে কিভাবে একটি সীমাতে সারিগুলি গণনা করতে হয়। আপনি একটি পরিসীমা কক্ষ গণনা করছেন?
আনানফায়

5

একটি সহজ সমাধান যা আমার পক্ষে কাজ করে:

=COUNTIFS(A:A;"<>"&"")

এটি খালি নয়, উভয় সংখ্যা, স্ট্রিং, তারিখ ইত্যাদি গণনা করে


5
= COUNTIF (A: A, "<>")
টম

প্রশ্নটি জিজ্ঞাসা করছে কিভাবে একটি সীমাতে সারিগুলি গণনা করতে হয়। আপনি একটি পরিসীমা কক্ষ গণনা করছেন?
আনানফায়

3

আমি যতদূর দেখতে পাচ্ছি, বেশিরভাগ সমাধানগুলিতে খালি কোষের সংখ্যা নয় এবং ভিতরে খালি ঘর নেই এমন সারিগুলির সংখ্যা নয়।

ব্যাপ্তির জন্য একটি সম্ভাব্য সমাধান B3:E29 উদাহরণস্বরূপ

=SUM(ArrayFormula(IF(B3:B29&C3:C29&D3:D29&E3:E29="";0;1)))

এখানে ArrayFormula(IF(B3:B29&C3:C29&D3:D29&E3:E29="";0;1))0 (যদি সারিটি খালি থাকে) এবং 1(অন্য) এর একটি কলাম দেয় ।

আর একটি দেওয়া হয়েছে রেসিওটির উত্তরে


2

উদাহরণস্বরূপ কল করা অ্যাপস স্ক্রিপ্ট (সরঞ্জামগুলি> স্ক্রিপ্ট সম্পাদক) ব্যবহার করে আপনি একটি কাস্টম ফাংশন সংজ্ঞায়িত করতে পারেন numNonEmptyRows:

function numNonEmptyRows(range) {
  Logger.log("inside");
  Logger.log(range);
  if (range && range.constructor === Array) {
    return range.map(function(a){return a.join('')}).filter(Boolean).length
  }
  else {
    return range ? 1 : 0;
  }
}

এবং তারপরে এটিকে =numNonEmptyRows(A23:C25)ফাঁকা সারিগুলির সংখ্যা গণনা করতে এটির মতো একটি ঘরে এটি ব্যবহার করুন A23:C25;


2

গুগল শিটগুলিতে, ত্রি-মাত্রিক ব্যাপ্তির মধ্যে কমপক্ষে একটি খালি খালি ঘর থাকা সারিগুলির সংখ্যা গণনা করতে :

=ARRAYFORMULA(
  SUM(
    N(
      MMULT(
        N(A1:C5<>""),
        TRANSPOSE(COLUMN(A1:C5)^0)
      )
      >0
    )
  )
)

যেখানে A1: C5 হল এমন সীমা যেখানে আপনি খালি খালি সারিগুলির জন্য পরীক্ষা করছেন।

সূত্রটি এসেছে এবং এটিকে এক্সেলেক্সর থেকে নিম্নলিখিত নিবন্ধে ব্যাখ্যা করা হয়েছে - https://excelxor.com/2015/03/30/counting-rows-where-at-least-one-condition-is-met/


1

এ জাতীয় জিনিসগুলি করার একটি খুব নমনীয় উপায় হ'ল আরআরএফর্মুল্লা।

উদাহরণ হিসাবে কল্পনা করুন আপনি খালি খালি স্ট্রিংগুলি (পাঠ্য ক্ষেত্র) গণনা করতে চান আপনি এই কোডটি ব্যবহার করতে পারেন:

=ARRAYFORMULA(SUM(IF(Len(B3:B14)>0, 1, 0)))

এখানে যা ঘটে তা হ'ল "অ্যারেফর্মুলা" আপনাকে মানগুলির একটি সেট দিয়ে কাজ করতে দেয়। SUM ফাংশনটি ব্যবহার করে আপনি সেটটির কোনও মান যোগ করতে "অ্যারেফর্মুলা" নির্দেশ করেন indicates "যদি" ধারাটি কেবল "খালি" বা "খালি নয়", খালি নয় বলে 1 এবং অন্যথায় 0 পরীক্ষা করতে ব্যবহৃত হয়। "লেন" বিভিন্ন পাঠ্য ক্ষেত্রের দৈর্ঘ্য ফিরিয়ে দেয়, সেখানে আপনি যাচাই করতে চান সেট (ব্যাপ্তি) নির্ধারণ করেন। পরিশেষে "অ্যারেফর্মুলা" সেট (ব্যাপ্তি) এর অভ্যন্তরে প্রতিটি ক্ষেত্রের জন্য 1 টি যোগ করবে যেখানে "লেন" 0 এর বেশি প্রদান করে।

আপনি যদি অন্য কোনও শর্ত পরীক্ষা করতে চান তবে কেবল আইএফ ধারাটির প্রথম যুক্তিটি সংশোধন করুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.