ফাঁকা এন্ট্রি সংরক্ষণ করে "বিভক্ত" সীমাবদ্ধ স্ট্রিং


10

আমি কিছু তথ্য হস্তক্ষেপ করার জন্য গুগল পত্রকগুলিতে (নতুন সংস্করণ) SPLITএবং JOINফাংশনগুলি ব্যবহার করার চেষ্টা করছি এবং SPLITফাঁকা এন্ট্রি সংরক্ষণ না করায় আমি সমস্যায় পড়ছি।

ডেটা উত্সটি মূলত এইভাবে সেট আপ করা হয়েছে:

   |  A    B    C    D
-----------------------
1  |  q    5    r    2
2  |  s         t    4
3  |  u    8    v
4  |  w    3    x    6

(এই ডেটা সেটে ফাঁকা এন্ট্রিগুলি "কোনও পরিমাপ নয়" উপস্থাপন করে, যা একটি পরিমাপের থেকে পৃথক 0)

কলামগুলিতে Aএবং C, আমি সূত্রটি ব্যবহার করে ফলাফলটি পেতে চাই:

=SPLIT(JOIN("~",A1:A4,C1:C4),"~")

এটি এমন একটি সারি তৈরি করে যা প্রত্যাশা অনুযায়ী q s u w r t v xপ্রতিটি তার নিজের ঘরে থাকে।

তবে এই পদ্ধতিটি কলামগুলিতে Bএবং কাজ করে না DJOINপ্রত্যাশিত হিসাবে ফাংশন, আউটপুট প্রদান:

5~~8~3~2~4~~6

পারফর্মিং SPLITযে আউটপুট উপর, তবে, একটি সমস্যা ফলাফল: আমি বাম করছি 5 8 3 2 4 6মধ্যে ফাঁকা ঘর ছাড়া 5এবং 8বা মধ্যবর্তী 4এবং 6, যার মানে জোড়া আপ ভাঙা হয় (যেমন sএবং vকোষ খালি মিলা উচিত, কিন্তু এর পরিবর্তে wএবং xনা)। সমস্যাটি মনে হচ্ছে যে SPLITএটি ~~দুটি সিলেমিটার হিসাবে তাদের মধ্যে নাল প্রবেশের পরিবর্তে একটি একক ডিলিমিটার হিসাবে ব্যাখ্যা করছে।

কেউ কি জানেন যে এই ধরণের দৃশ্যে ফাঁকা এন্ট্রিগুলি কীভাবে সংরক্ষণ করা যায়?

পছন্দসই আউটপুটটি দেখতে এটির মতো লাগবে

q  s  u  w  r  t  v  x
5     8  3  2  4     6

এই শূন্য ক্ষেত্রগুলির কোনও স্থান কী সমস্যার সমাধান করবে?
আলে

"" টাইপ করার ফলে ফাঁকা এন্ট্রি সংরক্ষণ করা যায় (ধন্যবাদ, @ আলি।!), তবে প্রযুক্তিগত সমাধান পাওয়া তবুও ভাল হবে, কমপক্ষে নয় কারণ সেই সমস্ত এন্ট্রিগুলিতে ম্যানুয়ালি টাইপ করা উভয়ই সময় সাশ্রয়ী এবং ত্রুটির প্রবণতা
লিবারালআর্টিস্ট

স্প্রেডশিট সূত্রগুলি আমার ফোর্ট নয়। IF()ফাঁকা ক্ষেত্রগুলিকে ফাঁকা জায়গায় স্বয়ংক্রিয় রূপান্তর করার জন্য সম্ভবত কিছু করা যেতে পারে ।
আলে

1
আপডেট: @ অ্যাল। এর ধারণাটি =ARRAYFORMULA(IF(ISBLANK(B1:B4)," ",B1:B4))ফাঁকা কোষগুলিতে কলামের একটি ডামি সেট তৈরি করে ব্যবহার করে তাত্ক্ষণিক মেয়াদে আমাকে গণনাটি করতে দেয়, যা পরে SPLITএবং এর জন্য ব্যবহৃত হয় JOIN। কারও কাছে আরও মার্জিত সমাধানের আশ্বাস রয়েছে, যদিও: এটি আমার ডকুমেন্টে অতিরিক্ত জিনিসপত্রের একগুচ্ছ সংযোজন করে এবং ডেটা সেটে আরও পরিমাপ যুক্ত হওয়ার সাথে সাথে আরও কয়েকটি স্থানে সারি সংখ্যাগুলি আপডেট করার প্রয়োজন রয়েছে। (এআই ই ধন্যবাদ। কমপক্ষে আমাকে আপাতত ডেটা ক্র্যাচ করতে দেওয়ার জন্য ধন্যবাদ!)
লিবারেলআর্টিস্ট

উত্তর:


3

নিম্নলিখিত সমাধান চেষ্টা করুন।

সূত্র

=ARRAYFORMULA(TRIM(SPLIT(JOIN(" ,", A1:A4,C1:C4), ",")))

ব্যাখ্যা

আপনি ইতিমধ্যে আমাদের দেখিয়েছেন যে SPLITফাংশন উপেক্ষা করে খালি কোষ, তাই আমি এই স্ট্রিং বিভেদক হিসাবে নির্বাচন করুন: " ,"JOINফাংশনটির মধ্যবর্তী ফলাফলটি এরকম দেখাচ্ছে:
এখানে চিত্র বর্ণনা লিখুন

আমি বিভেদক চয়ন SPLITফাংশন এই হতে হবে: ","SPLITফাংশনটির মধ্যবর্তী ফলাফলটি এরকম দেখাচ্ছে:
এখানে চিত্র বর্ণনা লিখুন

এখন, অতিরিক্ত অতিরিক্ত সাদা জায়গাগুলি আমাদের মোকাবেলা করতে হবে। অতএব আমি TRIMফাংশনটি ব্যবহার করেছি , সমস্ত অনুসরণযোগ্য বা শীর্ষস্থানীয় সাদা স্পেসগুলি মুছে ফেলতে (এর সাথে সম্মিলিতভাবে ARRAYFORMULA)। LENপ্রতিটি মধ্যবর্তী ফলাফলের মানগুলি তুলনা করুন ।

ফলাফল

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

উদাহরণ

আমি আপনার জন্য একটি উদাহরণ ফাইল তৈরি করেছি: ফাঁকা ঘর সংরক্ষণের জন্য SPLIT


2

নিম্নলিখিত সমাধান চেষ্টা করুন।

কোড

function myJoin() { 
  var output = []; 
  for(var i = 0, iLen = arguments.length; i < iLen; i++) {
    for(var r = 0, rLen = arguments[i].length; r < rLen; r++) {
      output.push(arguments[i][r][0]);
    }    
  }
  return [output];
}

ব্যবহার

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

আপনার পছন্দ মতো ফাংশনে যতগুলি ব্যাপ্তি যুক্ত করুন এবং সেগুলি প্রক্রিয়া করা হবে। আপনার স্প্রেডশিটের স্ক্রিপ্ট সম্পাদকটিতে এই ছোট স্ক্রিপ্টটি যুক্ত করুন (সরঞ্জামগুলি> স্ক্রিপ্ট সম্পাদক; সংরক্ষণ বোতাম টিপুন)।

উদাহরণ

আমি আপনার জন্য একটি উদাহরণ ফাইল তৈরি করেছি: ফাঁকা ঘর সংরক্ষণের জন্য SPLIT


2

সংক্ষিপ্ত উত্তর

নিম্নলিখিত সূত্রটি পছন্দসই ফলাফল দেয়।

=Transpose({A1:B4;C1:D4})

বর্ধিত উত্তর

এই উত্তরটি কীভাবে নির্বাচিত পদ্ধতিতে কাজ করতে হয় তা নিয়ে আলোচনা করার পরিবর্তে কাঙ্ক্ষিত ফলাফল পাওয়ার জন্য একটি উপায় সরবরাহ করার দিকে মনোনিবেশ করা হয়েছে।

এক্সওয়াই সমস্যা

ওপি এক্স পেতে চায় এবং মনে করে যে ওয়াইয়ের সেই ফলাফলটি ফিরিয়ে দেওয়া উচিত। এই পদ্ধতিটি সমস্যাযুক্ত কারণ ওয়াইয়ের কিছু ক্যাভেট রয়েছে। এটি কোনও মেয়রের সমস্যা হতে পারে যেহেতু ওপিতে এক্স পেতে কোনও উপায় জিজ্ঞাসার পরিবর্তে ওয়াইকে কীভাবে কাজ করা যায় সে সম্পর্কে জিজ্ঞাসা করা হয় তবে এটি এত বড় নয় কারণ এটি প্রসঙ্গ এবং পছন্দসই ফলাফল সরবরাহ করেছে।

সমাধান

গুগল শীটগুলি শেষ ব্যবহারকারীদের দৃষ্টিকোণ থেকে খুব সহজ উপায়ে মাল্টি-ভ্যালু ফলাফলগুলি পরিচালনা করতে সক্ষম। অন্যদিকে, এটি শেষ ব্যবহারকারীদের অ্যারে সংজ্ঞা দেওয়ার জন্য একটি বিশেষ স্বরলিপি ব্যবহার করার অনুমতি দেয়।

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

সূত্রের ব্যাখ্যা

{A1:B4;C1:D4}

এটি 2 এক্স 8 অ্যারে দুটি 2 এক্স 4 অ্যারে / রেঞ্জ দ্বারা তৈরি। সেমিকোলন ( ;) ব্যবহার করে ধরে নেওয়া হয় যে স্প্রেডশিটের দশমিক বিভাজক একটি বিন্দু ( .)। দশমিক বিভাজক কমা হলে, এটি একটি ব্যাকস্ল্যাশ ( \) দ্বারা প্রতিস্থাপন করুন ।

=Transpose({A1:B4;C1:D4})

2 এক্স 8 অ্যারেটিকে 8 এক্স 2 অ্যারে রূপান্তর করে।

এই পদ্ধতির একটি সুবিধা হ'ল এর জন্য ফাঁকা ঘরগুলি বিশেষ পরিচালনা করার প্রয়োজন হয় না। অন্যান্য সুবিধা হ'ল এটি একটি খুব কমপ্যাক্ট সূত্র এবং এটি অভিযোজিত করা খুব সহজ।

তথ্যসূত্র


1

আপনি যদি যোগদান করে এবং ডিলিমিটারটিকে "," মূলত একটি পূর্ববর্তী স্থানের সাথে কমাতে পরিণত করেন তবে আপনি যখন আবার বিভাজন করবেন তখন স্বয়ংক্রিয়ভাবে সেই স্থানটি সংরক্ষণ করবে:

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