এক্সেল - পরিবর্তনশীল দৈর্ঘ্যের ব্যাপ্তিতে স্ট্রিংগুলিতে চরিত্রের উপস্থিতি কীভাবে গণনা করা যায়


0

পটভূমি: আমি ফ্রিকোয়েন্সিটি বিশ্লেষণ করছি যেখানে ইমেলগুলির একটি সেটে বিষয়গুলি উপস্থিত হয়। প্রতিটি বিষয়ের একটি অনুরূপ অক্ষর (এজেড) থাকে এবং প্রতিটি ই-মেইল যখনই বিষয়টির কোনও দিক সামনে আসে তখন এই অক্ষরগুলির বেশ কয়েকটি নির্ধারিত হয়:

ডেটা বেসিক কাঠামো

উপরের উদাহরণে, মাইল 2 'সি' 2 বার এবং 'ডি' 2 বারের উপরে স্পর্শ করেছে।

প্রশ্ন: প্রতিটি ই-মেলে অনুরূপ সারি এবং অক্ষরের সংখ্যা অপ্রত্যাশিত হলে (1 এবং 12 এর মধ্যে) যদি আমি আলাদাভাবে প্রতিটি ই-মেইলের জন্য এই সংঘটনগুলি কীভাবে সংক্ষিপ্ত করব ?

আমি ফলাফলগুলি ফর্ম্যাট করার বিষয়ে এইভাবে ভাবছি: এখানে চিত্র বর্ণনা লিখুন

আমি প্রতিটি সারিটিকে তার সম্পর্কিত ইমেল লেবেল দিতে পারি। আমি অনুমান করি যে তারপরে C2MAIL1 হিসাবে চিহ্নিত সারিগুলিতে থাকা সমস্ত কক্ষগুলি থেকে কিছু ধরণের স্ট্রিংয়ে একরকম অক্ষরের (যেমন 'ক' জন্য ) প্রতিটি ধূসর সেল গণনা উপস্থিতি পাওয়া যাবে? তবে আমি যে কোনও ধরণের সমাধানের জন্য কৃতজ্ঞ থাকব যা প্রতিটি ই-মেইলের জন্য পৃথক ফলাফলের অনুমতি দেয়।


যদি আপনার ডেটা ইনপুট স্থির হয়, তবে আমি আপনাকে একটি ভিবিএ সমাধান বিকাশ করার পরামর্শ দিচ্ছি। যদি আপনার ডেটা ইনপুটটি নমনীয় হয়, তবে একটি পিভট টেবিলের জন্য উপযুক্ত এমন একটি নকশা তৈরি করুন - উদাহরণস্বরূপ: একক সারিতে প্রতিটি আইটেমের জন্য ডেটা, এবং প্রতি সেল প্রতি একক অক্ষর, বা একটি ঘরের সমস্ত অক্ষর (তারপরে এটি ভাগ করুন) পাওয়ার পিভট)
রন

উত্তর:


0

দয়া করে নোট করুন যে এই উত্তরের সূত্রগুলি ঘরে প্রবেশ করাতে হবে C2, তারপরে প্রয়োজনীয়ভাবে অনুলিপি / পূরণ করা দরকার।


সম্পাদনা করুন: সক্রিয় সেখানে আউট হয় সাহায্যকারী কোষ ব্যবহার না করেই সমস্যা সমাধানের একটি উপায়:

=
SUMPRODUCT(
  ($B2=$A$2:INDEX($A:$A,MATCH("*",$B:$B,-1)))*
  (LEN($B$2:INDEX($B:$B,MATCH("*",$B:$B,-1)))-LEN(SUBSTITUTE($B$2:INDEX($B:$B,MATCH("*",$B:$B,-1)),C$1,"")))
)

ব্যাখ্যা: $A$2:INDEX($A:$A,MATCH("*",$B:$B,-1))শব্দটি এবং সংশ্লিষ্ট Bকলামের সংস্করণটি উত্স রেঞ্জকে গতিশীলভাবে সমন্বয় করতে ব্যবহৃত হয়। সূত্রটি উদাহরণস্বরূপ স্প্রেডশিটের ক্ষেত্রে প্রযোজ্য নিম্নলিখিত স্ট্যাটিক সংস্করণের সমতুল্য:

=
SUMPRODUCT(
  ($B2=$A$2:$A$11)*
  (LEN($B$2:$B$11)-LEN(SUBSTITUTE($B$2:$B$11,C$1,"")))
)



সবচেয়ে সহজ সমাধানটি হবে নিম্নলিখিত সূত্র:

=COUNTIFS($A:$A,$B2,$B:$B,"=*"&C$1&"*")

দুর্ভাগ্যক্রমে এটি বিশেষ ক্ষেত্রে ব্যর্থ হয় যেখানে কোনও ঘরে একটিরও বেশি চিঠি থাকে। উদাহরণস্বরূপ, ঘরে থাকা 'চ' B11কেবল একবারই গণনা করা হবে।


আমরা একাধিক ঘটনার পরিসংখ্যান সংক্ষিপ্ত করে এই সমস্যাটিকে কুৎসিত এবং সীমিত উপায়ে সমাধান করতে পারি । উদাহরণস্বরূপ, নিম্নলিখিত যে কোনও চরিত্রের সর্বাধিক তিনটি ঘটনার জন্য কাজ করবে:

=COUNTIFS($A:$A,$B2,$B:$B,"=*"&C$1&"*")
+COUNTIFS($A:$A,$B2,$B:$B,"=*"&C$1&"*"&C$1&"*")
+COUNTIFS($A:$A,$B2,$B:$B,"=*"&C$1&"*"&C$1&"*"&C$1&"*")

বিকল্পভাবে, আমরা সহায়ক কোষ ব্যবহার করতে পারি। এই রেঞ্জের প্রতিটি কক্ষে নিম্নলিখিত সূত্রটি অনুলিপি করা / পূরণ করা হয়েছে যা C2:H11কেবল এটি করে:

=
IF(
  ""<>$A2,
  LEN($B2)-LEN(SUBSTITUTE($B2,C$1,"")),
  SUMIF($A:$A,$B2,C:C)
)

সংক্ষিপ্ত বর্ণনা:

""<>$A2 ঘরটি সহায়ক সহায়ক (সত্য) বা ধূসর, ফলাফল কোষ (মিথ্যা) কিনা তা নির্বাচন করে।

LEN($B2)-LEN(SUBSTITUTE($B2,C$1,"")) উপযুক্ত কক্ষে উপযুক্ত বর্ণের সংখ্যার সংখ্যা গণনা করে।

SUMIF($A:$A,$B2,C:C) উপযুক্ত চিঠির জন্য গণনাগুলি যোগ করে।

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