একটি পরিসর থেকে খালি কক্ষগুলি সরানো হচ্ছে৷

সমস্যা প্রণয়ন

আমাদের কাছে ডেটা সহ কোষের একটি পরিসর রয়েছে যাতে খালি কোষ রয়েছে:

 

কাজটি হল খালি কোষগুলি সরিয়ে ফেলা, শুধুমাত্র তথ্য সহ কোষগুলি রেখে।

পদ্ধতি 1. রুক্ষ এবং দ্রুত

  1. মূল পরিসীমা নির্বাচন করা হচ্ছে
  2. কী টিপুন F5, পরবর্তী বোতাম লক্ষণীয় করা (বিশেষ). যে উইন্ডোটি খোলে, সেখানে নির্বাচন করুন খালি কোষ(ফাঁকা) এবং ক্লিক OK.

    একটি পরিসর থেকে খালি কক্ষগুলি সরানো হচ্ছে৷

    পরিসরের সমস্ত খালি কক্ষ নির্বাচন করা হয়েছে৷

  3. আমরা নির্বাচিত কক্ষগুলি মুছে ফেলার জন্য মেনুতে একটি কমান্ড দিই: ডান-ক্লিক করুন- সেল মুছুন (কোষ মুছুন) ঊর্ধ্বমুখী স্থানান্তর সহ।

পদ্ধতি 2: অ্যারে সূত্র

সহজ করার জন্য, চলুন ব্যবহার করে আমাদের কাজের পরিসরের নাম দেওয়া যাক নাম পরিচালক (নাম ম্যানেজার) ট্যাব সূত্র (সূত্র) অথবা, এক্সেল 2003 এবং তার বেশি বয়সে, মেনু সন্নিবেশ - নাম - বরাদ্দ (ঢোকান — নাম — সংজ্ঞায়িত করুন)

 

B3:B10 পরিসরের নাম দিন খালি আছে, পরিসর D3:D10 - কোনোটিই খালি নয়. পরিসরগুলি অবশ্যই একই আকারের হতে হবে এবং একে অপরের সাথে সম্পর্কিত যে কোনও জায়গায় অবস্থিত হতে পারে।

এখন দ্বিতীয় পরিসরের (D3) প্রথম ঘরটি নির্বাচন করুন এবং এতে এই ভীতিকর সূত্রটি প্রবেশ করান:

=IF(ROW() -ROW(NoEmpty)+1>NOTROWS(হ্যাঁ খালি)-COUNTBLANK(হ্যাঁ খালি);””;অপ্রত্যক্ষ(ঠিকানা(নিম্নতম((যদি(খালি<>“”), ROW(খালি);ROW() + সারি (খালি আছে))); লাইন()-ROW(খালি নেই)+1); কলাম (খালি আছে); 4)))

ইংরেজি সংস্করণে এটি হবে:

=IF(ROW()-ROW(NoEmpty)+1>ROWS(Empty)-COUNTBLANK(খালি),"",Indirect(ADDRESS(SMALL((IF(Empty<>""),ROW(Empty),ROW() +ROWS(খালি আছে)), ROW()-ROW(খালি নেই)+1), COLUMN(খালি আছে),4)))

তাছাড়া, এটি অবশ্যই একটি অ্যারে সূত্র হিসাবে প্রবেশ করাতে হবে, অর্থাৎ পেস্ট করার পরে টিপুন প্রবেশ করান (স্বাভাবিক হিসাবে) এবং Ctrl + Shift + Enter. এখন ফর্মুলাটি স্বয়ংসম্পূর্ণ ব্যবহার করে কপি করা যেতে পারে (কক্ষের নীচের ডানদিকে কালো ক্রসটি টেনে আনুন) - এবং আমরা আসল পরিসীমা পাব, তবে খালি ঘর ছাড়াই:

 

পদ্ধতি 3. VBA-তে কাস্টম ফাংশন

যদি সন্দেহ হয় যে আপনাকে প্রায়শই রেঞ্জ থেকে খালি কক্ষগুলি সরানোর পদ্ধতিটি পুনরাবৃত্তি করতে হবে, তবে একবার মান সেটে খালি ঘরগুলি সরানোর জন্য আপনার নিজস্ব ফাংশন যুক্ত করা এবং পরবর্তী সমস্ত ক্ষেত্রে এটি ব্যবহার করা ভাল।

এটি করার জন্য, ভিজ্যুয়াল বেসিক এডিটর খুলুন (ALT + F11), একটি নতুন খালি মডিউল সন্নিবেশ করান (মেনু সন্নিবেশ - মডিউল) এবং সেখানে এই ফাংশনের পাঠ্য অনুলিপি করুন:

ফাংশন নোব্ল্যাঙ্কস (পরিসীমা হিসাবে ডেটা রেঞ্জ) ভেরিয়েন্ট হিসাবে() ডাইম এন যত লম্বা ডিম এন 2 যত লম্বা ডিম রেঞ্জ তত রেঞ্জ ডিম ম্যাক্সসেল যতটা লং ডিম রেজাল্ট Application.Caller.Cells.Count, DataRange.Cells.Count) ReDim ফলাফল (1 থেকে MaxCells, 1 থেকে 1) প্রতিটি Rng-এর জন্য DataRange.Cells যদি Rng.Value <> vbNullString তাহলে N = N + 1 ফলাফল(N, 1) ) = Rng.Value End যদি N2 এর জন্য পরবর্তী Rng = N + 1 থেকে MaxCells ফলাফল(N2, 1) = vbNullString পরবর্তী N2 যদি Application.Caller.Rows.Count = 1 তাহলে NoBlanks = Application.Transpose(ফলাফল) অন্যথা NoBlanks = ফলাফল End If End Function  

ফাইলটি সংরক্ষণ করতে ভুলবেন না এবং Visual Basic Editor থেকে Excel এ ফিরে যান। আমাদের উদাহরণে এই ফাংশনটি ব্যবহার করতে:

  1. খালি কক্ষের একটি পর্যাপ্ত পরিসর নির্বাচন করুন, উদাহরণস্বরূপ F3:F10।
  2. মেনুতে যান সন্নিবেশ - ফাংশন (ঢোকান — ফাংশন)বা বোতামে ক্লিক করুন সন্নিবেশ ফাংশন (ফাংশন সন্নিবেশ করান) ট্যাব সূত্র (সূত্র) এক্সেলের নতুন সংস্করণে। ক্যাটাগরিতে ব্যবহারকারী সংজ্ঞায়িত (ব্যবহারকারী সংজ্ঞায়িত) আমাদের ফাংশন চয়ন করুন নোব্ল্যাঙ্কস.
  3. ফাংশন আর্গুমেন্ট হিসাবে voids (B3:B10) সহ উৎস পরিসীমা নির্দিষ্ট করুন এবং চাপুন Ctrl + Shift + Enterএকটি অ্যারে সূত্র হিসাবে ফাংশন প্রবেশ করতে.

:

  • একটি সাধারণ ম্যাক্রো দিয়ে একবারে একটি টেবিলের সমস্ত খালি সারি মুছে ফেলা হচ্ছে
  • PLEX অ্যাড-অন ব্যবহার করে একবারে একটি ওয়ার্কশীটে সমস্ত খালি সারি সরানো
  • দ্রুত সব খালি ঘর পূরণ করুন
  • ম্যাক্রো কি, VBA তে কোথায় ম্যাক্রো কোড ঢোকাতে হয়

 

নির্দেশিকা সমন্ধে মতামত দিন