কিভাবে সূচী-একটি নির্দিষ্ট কোষ থেকে ফাঁকা পর্যন্ত উপরের দিকে মেলে


3

আমি একটি ডিরেক্টরি গাছ বিন্যাস সাজানোর তথ্য আছে (ছবি দেখুন)

মূলত আমি একটি রেফারেন্স বিন্দু হিসাবে একটি ল্যাপটপ কোড ব্যবহার করতে চাই এবং "প্যারেন্ট ডিরেক্টরি" প্রদর্শনের জন্য নিজ নিজ কলামগুলিতে উপরের দিকে তাকান।

বর্তমানে আমার একটি সূচক রয়েছে যা আমাকে ঠিক কোন কোডটি বলে, কিন্তু আমি একটি সন্ধানের সরঞ্জাম সেট আপ করতে চাই (নীচের চিত্রটিতে নিচের টেবিলটি দেখুন) যা আমাকে একবারে সমস্ত স্তর দেখায়। ছবিতে আমি সূত্র ব্যবহার করে আমি যে মানগুলি ফেরত দিতে চাইছি তা ইনপুট করেছি।

তাই যদি আমি লেভেল 4 কোড ইনপুট করি, আমি সূত্র ব্যবহার করতে চাই যা স্তর 4, 3, 2, এবং 1 প্রোগ্রামগুলি ফেরত দেবে। লেভেল 3 কোডের জন্য, আমি লেভেল 3, 2, এবং 1 প্রোগ্রামগুলি ফিরে দেখতে চাই।

তথ্য 10,000+ লাইন আছে।

enter image description here

এটা আমার কাছে খুব সহজ মনে হচ্ছে .... এই সারিতে শুরু করুন এবং আপনি এই কলামে উপরের দিকে তাকান না যতক্ষণ না আপনি একটি মান পৌঁছান ..... কিন্তু মনে হয় এটি এত সহজ নয়।

কোন সাহায্য / টিপস ব্যাপকভাবে প্রশংসা করা হবে!

-Alex


এটি আপনাকে সঠিক দিক থেকে শুরু করতে পারে (ctrl + shift + enter দিয়ে নিশ্চিত করুন): =MAX(IF(NOT(ISBLANK(OFFSET(A2,,,MATCH(H2,D2:D6,0)))),ROW(A2:A6),""))। অনুমান করা হচ্ছে A1: F6 এ, কলাম A তে প্রথম অ-ফাঁকা কক্ষের সারি প্রদান করে, H2 এ প্রবেশ করা কোড থেকে সন্ধান করে। আমি সম্ভবত আগামীকাল একটি আরো সম্পূর্ণ উত্তর পোস্ট করতে পারেন।
Kyle

উত্তর:


3

আপনি লক্ষ্য করেছেন, এক্সেল নেটিভভাবে "ঊর্ধ্বমুখী খুঁজছেন" সমর্থন করে না। মত ফাংশন index() অথবা vlookup() খুঁজে বের করার জন্য মহান প্রথম ম্যাচ, কিন্তু না গত

আপনার তথ্য অনুমান করা হচ্ছে কক্ষে A1: F10, এই সূত্রটি সেল H2 এ প্রবেশ করা কোড (কলাম ডি) থেকে শুরু করে কলাম A এ শেষ অ-ফাঁকা ঘর খুঁজে পায়। এটি স্বতঃপূর্ণ হয়ে যাবে (আপনার অন্যান্য কলাম খুঁজে পেতে) এবং নিচে (আরও কোড অনুসন্ধান করতে)। এটি একটি অ্যারে সূত্র এবং ctrl + shift + enter দিয়ে নিশ্চিত হওয়া আবশ্যক।

=INDEX(A$2:A$10,MAX(IF(NOT(ISBLANK(OFFSET(A$2,,,MATCH($H2,$D$2:$D$10,0)))),ROW(OFFSET(A$2,,,MATCH($H2,$D$2:$D$10,0))),""))-1)

OFFSET(A$2,,,MATCH($H2,$D$2:$D$10,0)) সন্ধানের অ্যারেটি গতিশীলভাবে আকারে ব্যবহার করা হয় যাতে এটি A2 এ শুরু হয়, এবং যে সারিতে পছন্দসই কোড পাওয়া যায় তার শেষে শেষ হয়। সুতরাং যদি আপনার কোড D5 মধ্যে অবস্থিত, এই টুকরা ফিরে A2:A5

MAX(IF(NOT(ISBLANK(...)),ROW(...),"")) এটি আমরা আগে পাওয়া পরিসীমা মধ্যে সর্বোচ্চ অ-ফাঁকা কোষ সারি সংখ্যা প্রদান করে।

INDEX(A$2:A$10,...-1) এবং পরিশেষে, index() আমরা পাওয়া কোষ প্রকৃত মান খুঁজে বের করে। আমরা রিকোয়েস্ট পরিসীমাটি ২ সারিতে শুরু হওয়ার কারণে একটিকে বিয়োগ করি, তবে সারি গণনা করে যে আমরা ব্যবহার করছি, সম্ভবত 1 টিতে শুরু হয়।


এই কাজ সুন্দর । আমি সবার সাথে চিন্তা করছিলাম যে, যদি আমি গতিশীল পরিসর ব্যবহার করতে পারি তবে আমি নিজেকে হাহাকে খুঁজে বের করতে সক্ষম হবো। আপনার সূত্র এবং প্রতিটি টুকরা আপনার ব্যাখ্যা আমাকে যা চেয়েছিল তা অর্জন করতে সাহায্য করেছিল এবং আরও জ্ঞান অর্জন করেছিল। ধন্যবাদ!
Alex
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.