সর্বোচ্চ মান ক্ষেত্রের নাম ফেরত


0

আমি একাধিক পণ্য আছে এবং আমি তাদের বিরুদ্ধে মান আছে।

আমি ব্যবহার করতাম min() অন্তত মান খুঁজে পেতে এবং তারপর ব্যবহৃত Index, match সংশ্লিষ্ট পণ্য নাম পেতে। কিন্তু আমার একাধিক পণ্য আছে যা একই মান আছে।

এই ক্ষেত্রে, মিনি মান হয় 54 , সুতরাং উদাহরণস্বরূপ, এটির বিরুদ্ধে মানচিত্রে থাকা সমস্ত তিনটি নাম আমি কীভাবে দেখাবো পণ্য এ , পণ্য পি , পণ্য প্রশ্ন বিরুদ্ধে 54।

enter image description here

মুহূর্তে এটি শুধুমাত্র পণ্য পি দেখানো হয়


আপনি Excel এর সাথে নয়, এটির জন্য আপনার একটি ডেটাবেস প্রয়োজন।
Mike Fitzpatrick

আপনি স্বাভাবিক সূত্রগুলির সাথে এটি করতে পারবেন না, এটি অর্জন করতে আপনাকে একটি VBA ম্যাক্রো তৈরি করতে হবে।
jcbermu

উত্তর:


1

তথ্য সহ:

enter image description here

একটি স্ট্যান্ডার্ড মডিউল নিম্নলিখিত ব্যবহারকারী নির্ধারিত ফাংশন লিখুন:

Public Function FindAll(v As Variant, rng As Range) As String
    Dim i As Long
    ary = rng

    For i = LBound(ary, 1) To UBound(ary, 1)
        If v = ary(i, 1) Then FindAll = FindAll & "," & ary(i, 2)
    Next i
    FindAll = Mid(FindAll, 2)
End Function

একটি সেল চয়ন, বলুন D7 , এবং লিখুন:

 =MIN(A:A)

এবং ভিতরে সি 7 প্রবেশ করান:

=findall(D7,A1:B25)

enter image description here

ব্যবহারকারী নির্ধারিত ফাংশন (UDFs) ইনস্টল করা এবং ব্যবহার করা খুব সহজ:

  1. ALT-F11 ভিবিই উইন্ডোটি নিয়ে আসে
  2. Alt-আমি ALT-M একটি নতুন মডিউল খোলে
  3. স্টাফ পেস্ট করুন এবং ভিবিই উইন্ডো বন্ধ করুন

আপনি যদি কার্যপুস্তিকাটি সংরক্ষণ করেন তবে ইউডিএফ এটির সাথে সংরক্ষণ করা হবে। 2003 এর পরে আপনি যদি এক্সেলের একটি সংস্করণ ব্যবহার করেন তবে আপনাকে অবশ্যই সংরক্ষণ করতে হবে .xlsx এর পরিবর্তে .xlsm ফাইলটি

ইউডিএফ অপসারণ করতে:

  1. উপরে হিসাবে VBE উইন্ডো আনতে
  2. কোড পরিষ্কার করুন
  3. VBE উইন্ডো বন্ধ করুন

এক্সেল থেকে ইউডিএফ ব্যবহার করতে:

= Myfunction (ক 1)

সাধারণভাবে ম্যাক্রো সম্পর্কে আরো জানতে, দেখুন:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

এবং

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

এবং UDFs এ সুনির্দিষ্ট জন্য, দেখুন:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

এই কাজ করার জন্য ম্যাক্রো সক্রিয় করা আবশ্যক!


1

আপনার সমস্যাটি Excel এ ইতিমধ্যে উপলব্ধ ফাংশন ব্যবহার করে সমাধান করা যেতে পারে। আমি এই ব্যবহার লিংক এবং তারপর আপনার সমস্যা জন্য এটি tweaked। আপনার পণ্যগুলি কলাম A তে রয়েছে এবং আপনার মূল্যগুলি কলাম B তে রয়েছে, এই সূত্রটি ব্যবহার করুন:

=IFERROR(INDEX($B$2:$B$20,SMALL(IF($A$2:$A$20=$E$3;ROW($A$2:$A$20)-1);ROW()-2));"")

Ctrl + shift + প্রবেশ করান (অ্যারে সূত্র) এবং আপনার সমস্ত ঘটনা দেখতে নিচে টেনে আনুন।

এটা কিভাবে কাজ করে? দ্য if সন্ধানের পরিসরের মান সন্ধানের মানের সমান হলে ফাংশন প্রথম চেক করে এবং যদি তাই হয় তবে এটি সেই মানের সূচীটি ফেরত দেয়। (তোমাকে করতে হবে row(..)-1 কারণ আপনার তথ্য সারি 2. শুরু হয় row()-2 শেষ পর্যন্ত আপনি ড্র্যাগ ডাউন হিসাবে সর্বনিম্ন প্রথম, দ্বিতীয়, ... occurence পেতে নিশ্চিত করা হয়। -2 প্রয়োজনীয় কারণ আপনার সূত্র শীট তৃতীয় সারিতে আসবে। আমি পরিশেষে একটি সবকিছু আবৃত iferror ফাংশন তাই ভাল মান দেখাবে, এবং কোন ত্রুটি বার্তা।


1
চকচকে পদ্ধতির .................. (+1 টি)
Gary's Student

এবং আপনি এটি শিখতে, এটি হফ সম্পর্কে অনেক কিছু শেখার দ্বারা। লিখিত নিবন্ধ লেখক হাস্যরস সঙ্গে নিবন্ধ স্টাফ, যাতে একটি যোগ বোনাস
Michthan

0

বিভিন্ন অ-ভিবিএ পন্থা:

সূত্র:

শিরোনামের সারি 1 এবং কলামগুলিতে আপনার ডেটা সহ A:B এবং =MIN(Product) মধ্যে E3:

F3: =IFERROR(INDEX(Value,AGGREGATE(15,6,1/1/(Product=$E$3)*ROW(Product),ROWS($1:1))-1),"")

আপনি খালি দেখতে না হওয়া পর্যন্ত সাধারণত প্রবেশ করুন এবং পূরণ করুন

enter image description here

আপনি পারে সাজান পণ্যের উপর তথ্য, তারপর নিম্নলিখিত শর্তাধীন বিন্যাস ব্যবহার করুন:

আপনার সাজানো টেবিল শুরু হয় অনুমান O12 তথ্য প্রথম লাইন দিয়ে O13

=O13=O12

Format As:   Custom Number Format:  ;;;

enter image description here

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