যদি পিএলএসএস বিভাগ-জনপদ-সীমার জন্য আইএফ, বাম, আইডিআইআরএটি এক্সেল ফাংশন


2

আমি একটি ক্যাডাস্ট্রাল ম্যাপিং সংস্থার জিআইএস বিশেষজ্ঞ।

আমি অফিস ২০১০ চালাচ্ছি এবং আমি এক্সেলে এমন একটি ফাংশন তৈরির চেষ্টা করছি যা বিভাগ, টাউনশিপ এবং ১ range ডিজিটের পার্সেল সনাক্তকরণ নম্বর (পিআইডি) থেকে স্বতন্ত্র কলামগুলিতে বিস্তৃত।

পিআইডি জরিপ টাউনশিপের 3 টি অঙ্কের পরে দুটি বিভাগ নম্বরের পরে শুরু হয়। তবে "জরিপ টাউনশিপ" পিএলএসএসের জনপদ এবং পরিসীমা নিয়ে বিভ্রান্ত হওয়া উচিত নয়। তবে প্রতিটি "জরিপ টাউনশিপ" পিএলএসএস-এর একক জনপদ এবং রেঞ্জ স্কোয়ারের গ্রিডের মধ্যে পড়ে।

প্রতিটি জরিপ টাউনশিপটি মিলার মানচিত্রের শীটগুলির পুরানো দিনগুলি থেকে 9 "মানচিত্রের শীট" নিয়ে গঠিত যা ম্যাপে 4 টি বিভাগ থাকে। একটি "জরিপ জনপদে" 36 টি বিভাগ রয়েছে। প্রতি শীট 4 টি বিভাগ সহ নয়টি মানচিত্রের শীট হ'ল 36।

SO.  PID 0241800000001000 

Survey township: 02
Map sheet:       4
Section:         18

PLSS township: 04
PLSS range   : 06

যতদূর. আমি সহজেই বিভাগ নম্বরটি সংগ্রহ করতে পারি। আমি এখন টাউনশিপ এবং রেঞ্জ নিয়ে কাজ করছি। আমি শীট 2 এ একটি রেফারেন্স তালিকা তৈরি করেছি যা কাউন্টিতে প্রতিটি মানচিত্রের শীট তালিকাভুক্ত করে (011-209)। নির্দিষ্ট কাউন্টিতে 20 জরিপ টাউনশিপ রয়েছে। সূত্রটি শীট 2 তে তালিকাটি উল্লেখ করতে হবে এবং সমীক্ষা জনপদ 2 এর জন্য পিআইডি প্রথম 3 টি অক্ষর 021-029 হয়, টাউনশিপ সেলটির আউটপুট 4 দক্ষিণের জন্য হওয়া উচিত (04 এস)। জরিপ টাউনশিপ রেঞ্জ (021-029) এবং পিএলএসএস টাউনশিপ (04 এস) আউটপুটটি আমার পরিবর্তনশীল, যা আমি প্রতি কাউন্টিতে পরিবর্তন করব।

আমার এখন পর্যন্ত যা আছে তা এখানে:

=IF(LEFT(B2,3) = ("Sheet2!A1:A9"),"05"), IF(LEFT(B2,3) = ("Sheet2!B1:B9"), "04")

পত্রক 2 এ,

  • A1: A9 সমীক্ষা জনপদের জন্য মানচিত্রের তালিকাটি উল্লেখ করছে (011-019)
  • বি 1: বি 9 জরিপ জনপদ 02 (021-029) এর জন্য মানচিত্রের তালিকাটি উল্লেখ করছে

বি 2 পিআইডি অবস্থান।

আউটপুটটি হয় আমাকে "মিথ্যা" বা! ভ্যালু # বলছে। অথবা এটি একটি ত্রুটির সাথে ব্যর্থ হয়।


পত্রক 2, কলাম A সারি 1-9: 011 012 013 014 015 016 017 018 019
ক্রিস সোয়ানসন

শী 2, কলাম বি সারি 1-9: 021 022 023 024 025 026 027 028 029
ক্রিস সোয়ানসন

একই ধরণের কলাম টিতে যায় to
ক্রিস সোয়ানসন

আমি সবেমাত্র একটি টেবিল শিরোনাম কীভাবে তৈরি করব তা খুঁজে পেয়েছি। শিট 2 থেকে রেঞ্জটি উল্লেখ করার চেয়ে মনে হচ্ছে, আমি কেবল কলামের নামটি উল্লেখ করতে সক্ষম হতে পারি?
ক্রিস সোয়ানসন

তবে কেবল কেন নয়: =TEXT(LEFT(B2,2)+4,"00")এটি আপনার উচিত
স্কট ক্রেনার

উত্তর:


1

"মোস্ট কনফিউজিং প্রব্লেম স্টেটমেন্ট" এর জন্য পুরষ্কার জিতানো ছাড়াও (দয়া করে @ স্কট থেকে মন্তব্যগুলি পড়ুন), আমি মনে করি আপনি পিআইডি / টাউনশিপের মানগুলিকে কোনও তালিকার সাথে মেলে করতে চান Sheet2

IF(LEFT(B2,3) = ("Sheet2!A1:A9"),"05")ভুল, কিন্তু আমি বলতে পারি আপনি যদি একটি পেতে চেষ্টা করছেন "04"বা "05"

এই "গোষ্ঠীগুলি" পৃথক কলামে রাখার পরিবর্তে, পিআইডির সমস্ত সম্ভাব্য মানগুলি কলামে A(স্থির Sheet2) রেখে দেওয়ার চেষ্টা করুন । এখন, কলামে সেই মানগুলির জন্য আপনি যে ফলাফলটি চান তা রাখুন B। কিছু দেখতে হবে:

 A  |  B
----+----
011 | 04
012 | 04
013 | 04
014 | 04
015 | 04
016 | 04
017 | 04
018 | 04
019 | 04
020 | 
021 | 05
022 | 05
023 | 05
024 | 05
025 | 05
026 | 05
027 | 05
028 | 05
029 | 05

এখন আপনার কাছে একটি সারণী রয়েছে । যা নীচের সূত্র আপনি যা চান তা পেতে হবে:

=INDEX(Sheet2!$B$1:$B$19,MATCH(LEFT(B2,3),Sheet2!$A$1:$A$19,0))

এবং হ্যাঁ, টেবিলগুলি এখানে আপনার বন্ধু হতে পারে (বিশেষত Sheet2)। তবে আবার আমার কাছে টেবিলের উদাহরণ নেই। আরও সাহায্য করতে চাই, তবে আমাদের আরও তথ্যের প্রয়োজন।


1
@ ক্রিসসওয়ানসন আমি এখানে এটি আপনার প্রথম প্রশ্ন। আমরা সবাই সেখানে ছিলাম. পরের বার, আরও সাধারণ কিছুতে মনোনিবেশ করুন যাতে আমরা আরও সহজে সহায়তা করতে পারি। যদি কোড / সূত্রের সাথে এটি ত্রুটি হয় তবে এটি আমাদের পক্ষে পুনরুত্পাদনযোগ্য করুন। স্ক্রিনশটগুলি এখন প্রশ্নটিতে এম্বেড করা খুব সহজ।
পুনরায়

1

বিবরণটি আবার পড়তে, আমার আগের প্রশ্নের উত্তরগুলির সন্ধানে, আমি এই সিদ্ধান্তে পৌঁছেছি যে প্রতিটি সমীক্ষা জনপদ কেবল পিএলএসএস-এর একক টাউনশিপ এবং রেঞ্জ স্কোয়ারের গ্রিডের মধ্যেই পড়ে না, তবে এটি নামটি বাদ দিয়েও এটির সাথে মেলে। সুতরাং, জরিপ টাউনশিপ 02 এর সমস্ত 9 টি শীট টাউনশিপ 04 এস রেঞ্জ 06W (বা 06E) এর পুরানো 9 টি শিটের সাথে মিল রয়েছে। যেহেতু আপনি বলেছিলেন যে বর্তমান কাউন্টিতে 20 জরিপ টাউনশিপ রয়েছে, তাই আমি দেশের একটি অনুমান "মানচিত্র" তৈরি করেছি, এটি একটি পিএলএসএস গ্রিডে 20 জরিপ টাউনশিপের ওভারলে দেখিয়েছি। (যেহেতু আপনার কাছে মানচিত্র রয়েছে এবং আপনি অঞ্চলটি জানেন, তাই আপনি আমার উদাহরণটি অনুসারে সামঞ্জস্য করতে পারেন)) আমি এই অনুমানের মানচিত্রটিকে বেসলাইন এবং মেরিডিয়ান উভয়কেই অতিক্রম করিয়েছি যাতে আপনি তার বাস্তবতা দেখতে পান।

এটি উদাহরণস্বরূপ আমি ব্যবহৃত "মানচিত্র"।

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

আপনার শিট 2 এর জন্য সেই মানচিত্রটিকে ডেটাতে রূপান্তর করা নিম্নলিখিত শিটটি উত্পন্ন করে:

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

PID 0241800000001000 এর জন্য আপনার নমুনা ডেটা ব্যবহার করে আমি এটি পত্রক 1 হিসাবে তৈরি করেছি:

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

সেলটির সূত্রটি B2হ'ল =LEFT(A2,2), পিআইডি থেকে জরিপ টাউনশিপ নম্বরটি বের করা।

কক্ষের সূত্রটি C2হ'ল =MID(A2,3,1)পিআইডি থেকে মানচিত্রের শিটটি বের করা।

সেলটির সূত্রটি D2হল =MID(A2,4,2), পিআইডি থেকে বিভাগ নম্বরটি বের করা।

গাইড হিসাবে শেষ সূত্রটি ব্যবহার করা আপনার অবস্থানগতভাবে অনুমানযোগ্য পিআইডির অন্য কোনও অংশ বের করতে সক্ষম হওয়া উচিত। আমি অনুমান করছি যে বাকী 10 টি সংখ্যা বিভাগীয় কোণগুলির পূর্ব এবং উত্তর বিভাগীয় বিভাগগুলির জন্য 5 এর দুটি গ্রুপে রয়েছে। (8,000 গুনটারের লিঙ্কগুলি কাজ করবে, আমার ধারণা, আপনি যদি এমন কোনও জায়গায় থাকেন যা এখনও সিস্টেমটি ব্যবহার করে, বা এমনকি 5 ইঞ্চিতেও ইঞ্চি ফিট করে))

কক্ষের সূত্রটি E2হ'ল শীট 2- এর কলামে =VLOOKUP(VALUE(B2),Sheet2!$A$2:$C$21,2)কক্ষের মান (সংখ্যাসূচক) সন্ধান করুন এবং একই সারিতে দ্বিতীয় কলামের মানটি ফিরিয়ে আনুন। দ্রষ্টব্য , এই একমাত্র বিন্দু যত্নশীল! পত্রক 2 এর ইনডেক্সিং কলামের মানগুলি অবশ্যই সংখ্যা হবে, পাঠ্য নয়। সুতরাং "02" এর পরিবর্তে এটি কেবল । এটি সম্ভবত আরও ভাল, যেহেতু আপনি সংখ্যা টাইপ করবেন তখন এক্সেল সেগুলি সংখ্যা হিসাবে সঞ্চয় করতে চায় না, পাঠ্য নয়, যদি আপনি সমস্যাটি উদ্ধৃতি বা স্পষ্ট সেল ফর্ম্যাটিং দিয়ে জোর না করেন।B2A2

কোষের সূত্রটি F2হ'ল =VLOOKUP(VALUE(B2),Sheet2!$A$2:$C$21,3)এটি তৃতীয় কলাম ব্যতীত, এটি ঘরের সূত্রের মতোই কাজ করে E2

পত্রক 2 তে ডেটা সংশোধন করা এবং শীট 1 এর কলাম ই এবং এফ এর কলামে এটি উল্লেখ করা আপনাকে পিআইডি সহ একই সিস্টেম ব্যবহার করার পরে আপনার রাজ্যের কোনও কাউন্টির জন্য এটি পুনরায় ব্যবহার করার অনুমতি দেবে। আমি আশা করি, যে বিষয়গুলিকে আমি ভুল বুঝেছিলাম তার জন্য, যে আপনি এখানে প্রদত্ত ধারণাগুলি সংশোধন করতে সক্ষম করতে পারবেন।

সম্পাদনা

একাধিক কাউন্টি, বা জরিপ টাউনশিপ সেটগুলির জন্য একই সিস্টেমটি ব্যবহার করতে, শুরুর দিকে দুটি কলাম সন্নিবেশ করে শীট 2 সংশোধন করুন। এটি জরিপের তালিকার জন্য, বা জরিপ টাউনশিপ সেটগুলির জন্য আপনি ব্যবহার করতে চান এমন অন্যান্য নামগুলির জন্য এবং পিএলএসএস ডেটা সন্ধানের জন্য তাদের সম্পর্কিত 'ব্যাপ্তি'। অন্যান্য সেট যুক্ত হওয়ায় এই তালিকাটি অবশ্যই বর্ণমুখে রাখতে হবে । প্রতিটি কাউন্টিতে তিনটি কলামের নিজস্ব সেট থাকবে। এই টেবিলগুলি বাম থেকে ডানে স্ট্যাক করার প্রয়োজন নেই। এগুলি যে কোনও উপায়ে আপনার কার্যপ্রবাহে সবচেয়ে উপযুক্ত ফিট করে সাজানো যেতে পারে। এগুলিও কোনও ক্রমে রাখার দরকার নেই, কলামে কেবল নামগুলি ক্রমযুক্ত Aথাকতে হবে। এটি 3 টি সেট সহ একটি নমুনা, যা আমি কেবল রঙিন করেছি যাতে তারা কীভাবে ভেঙে যায় তা স্পষ্ট করে তোলে।

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

এটি সেটের নমুনা "মানচিত্র"। আমি কয়েকটি ওভারল্যাপিং অঞ্চলগুলি অন্তর্ভুক্ত করেছি যেহেতু আমি জানি সমস্ত কাউন্টি লাইনগুলি সুবিধামতভাবে টানা পিএলএসএস সীমানা লাইন অনুসরণ করবে না। সুতরাং, আমি অনুমান করছি যে দুটি পৃথক জরিপ টাউনশিপগুলি একটি সাধারণ পিএলএসএস টাউনশিপ / রেঞ্জের সাথে সামঞ্জস্য করতে পারে।

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

প্রথম শীটে, Sheet1কাউন্টি নামের কলাম হিসাবে একটি নতুন কলাম .োকান A। নিচে দেখানো নমুনা।

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

এই কলামে ব্যবহৃত নামগুলি মিলাতে হবে, ঠিক প্রথম নামটির প্রথম কলামে ব্যবহৃত নামগুলি Sheet2তবে কোনও ক্রমে ব্যবহার করা যেতে পারে। Sheet1উভয় পত্রকের পরিবর্তনের জন্য এবং কাউন্টির নামগুলি উল্লেখ করার জন্য সূত্রগুলি সমন্বয় করা দরকার।

সেল সি 2 এর সূত্রটি হ'ল =LEFT(B2,2)

সেল ডি 2 এর সূত্রটি হ'ল =MID(B2,3,1)

E2 ঘরটির সূত্রটি =MID(B2,4,2)

সেল F2 এর সূত্রটি হ'ল

`=VLOOKUP(VALUE(C2),INDIRECT("Sheet2!"&VLOOKUP(A2,Sheet2!$A$2:$B$100,2)),2)`.

সেল জি 2 এর সূত্রটি হ'ল

`=VLOOKUP(VALUE(C2),INDIRECT("Sheet2!"&VLOOKUP(A2,Sheet2!$A$2:$B$100,2)),3)`.

কক্ষগুলিতে F2এবং G2সূত্রে এমন পরিসীমা অন্তর্ভুক্ত রয়েছে Sheet2!$A$2:$B$100যেখানে 100প্রচুর কাউন্টির (99 আসলে) অনুমতি দেওয়ার জন্য বেছে নেওয়া কেবলমাত্র একটি সংখ্যা। আপনি রাষ্ট্র 120 কাউন্টিকে হয়েছে, এবং আপনি তাদের সব আবরণ প্রয়োজন হয়, তাহলে পরিবর্তন 100করার জন্য 121, উদাহরণস্বরূপ।

'ম্যাজিক' শেষ দুটি কোষে দুটি ফাংশন ব্যবহার করে VLOOKUPএবং হয় INDIRECT। অভ্যন্তরীণটি কলামে VLOOKUPকাউন্টির নামটি ব্যবহার করার সীমাটি সন্ধান করতে ব্যবহার করে । টেবিলের সম্পূর্ণ রেফারেন্স তৈরি করতে এটি অন্যান্য স্ট্রিং অংশগুলির সাথে একত্রিত হয় । ফাংশন যা স্ট্রিং লাগে এবং একটি রেফারেন্স যে বাইরের মধ্যে সক্রিয় ব্যবহার করতে পারেন।Sheet1ASheet2Sheet2INDIRECTVLOOKUP

আপনি চাইলে বিভিন্ন রাজ্যের কভার করতে পৃথক শিট ব্যবহার করতে পারেন। যে কাজ পরিবর্তন করতে Sheet2কক্ষে রেফারেন্স F2এবং G2করতে Sheet3, অথবা যাই হোক না কেন নতুন পত্রক নাম। আপনি শীটগুলির কেবলমাত্র 2 টি হলেও, আরও ভাল কাজ করে এমন কিছুতে এটির নাম পরিবর্তন করতে পারেন। আবার, আপনাকে Sheet2নতুন নামের উল্লেখগুলি পরিবর্তন করতে হবে । (ইন প্রতি লাইনে 4 প্রতিস্থাপন, দুই প্রতিটি মোট Fএবং G।) দুই রাজ্যের একই কাউন্টি নাম থাকে, তাহলে এটা কোন ব্যাপার না হবে যেহেতু নামের যে রাজ্যের পত্রকে তালিকায় তাকিয়ে করা হবে না, এবং তার নিজস্ব টেবিল রেফারেন্স, না ভিন্ন রাজ্যে একই নামযুক্ত কাউন্টি।

আমি মূলত উল্লেখ করতে ভুলে গিয়েছিলাম একটি পয়েন্টটি হ'ল Sheet1পিআইডি-র জন্য ঘরগুলির বিন্যাসটি পাঠ্যে সেট করতে হবে, অন্যথায় এটি সংখ্যা হিসাবে বোঝা যাবে এবং এক্সেল নেতৃস্থানীয় শূন্যগুলি হ্রাস করবে এবং পরের 3 তে স্ট্রিং ম্যানিপুয়েশনের কাজ করবে drop কলামগুলি ব্যর্থ হবে, যা শেষ দুটি কলামে ব্যর্থতা বা এমনকি ত্রুটিগুলিকে কাসকেড করে।

লিনাক্স ব্যবহার করে এমন লোকদের জন্য একটি অতিরিক্ত নোট, এটি লিবারঅফিস ক্যাল্কে কাজ করার জন্য !শিটের রেফারেন্সের রেফিটের VLOOKUPসময়কালে পরিবর্তন করা দরকার ., তবে বাকীটি যেমন রয়েছে তেমন রয়েছে as


আমি ঠিক তাই করার চেষ্টা করছিলাম। সুতরাং আমাকে আরও জটিল করতে দিন। হাঃ হাঃ হাঃ. যদি আমি এমন কোনও "কাউন্টি" ফিল্ড যুক্ত করতে চাই যা পৃথক কাউন্টির জন্য অনুসন্ধান পত্রকে বোঝায়? উপরে আপনার উদাহরণ ব্যবহার করে বলুন, পিআইডি 0241800000001000 কাউন্টি এ এবং 2093500200010000 কাউন্টি বিতে রয়েছে এবং ধরে নিন আমার কাছে ইতিমধ্যে আমার রাজ্যের প্রতিটি কাউন্টির জন্য একটি অনন্য লুকিং শীট রয়েছে।
ক্রিস সোয়ানসন

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