ভিবিএ স্ট্রিং টু ডেট | এক্সেল ভিবিএতে স্ট্রিংয়ের মানগুলিকে তারিখে রূপান্তর করুন
এক্সেল ভিবিএ স্ট্রিং টু ডেট
ভিবিএতে একটি পদ্ধতি রয়েছে যার মাধ্যমে আমরা একটি প্রদত্ত স্ট্রিংটিকে একটি তারিখে রূপান্তর করতে পারি, এবং পদ্ধতিটি ভিবিএতে সিডিএটি ফাংশন হিসাবে পরিচিত, এটি ভিবিএতে একটি ইনবিল্ট ফাংশন এবং এই ফাংশনের জন্য প্রয়োজনীয় অংশগুলি প্রথমে স্ট্রিংকে রূপান্তর করা হয় একটি সংখ্যা এবং তারপরে আমরা প্রদত্ত নম্বরটিকে একটি তারিখে রূপান্তর করি। ফলাফলের ফর্ম্যাটটি কেবলমাত্র সিস্টেমের তারিখের ফর্ম্যাটের উপর নির্ভর করে।
এক্সেল সহ আমরা সকলেই যে সাধারণ সমস্যার মুখোমুখি হচ্ছি তা হ'ল 'তারিখ ও সময়' এবং প্রায়শই পাঠ্য মান হিসাবে সংরক্ষণ করা হয় এবং প্রাথমিকভাবে নজরে না যায়। কিন্তু যখন তাদের সেই সময়টি ব্যবহার করার দরকার হয় তখন আমরা জানতে পারি যে সেই মানগুলি পাঠ্য হিসাবে সঞ্চিত রয়েছে এবং সেগুলি কীভাবে মোকাবেলা করতে হবে তা আমরা জানি না। "তারিখ এবং সময়" হ'ল একটি উপাদান দুটি সমন্বিত জিনিস কিন্তু একবার মানগুলি পাঠ্য মান হিসাবে সংরক্ষণ করা হয় যা কাজ করে ব্যথা হয়।
স্ট্রিংয়ের মানগুলিকে কীভাবে রূপান্তর করবেন?
আপনি এই ভিবিএ স্ট্রিং টু ডেট এক্সেল টেম্পলেটটি ডাউনলোড করতে পারেন - ভিবিএ স্ট্রিং টু ডেট এক্সেল টেম্পলেটউদাহরণ # 1
একবার ভিবিএ ভেরিয়েবল ঘোষিত হয়ে স্ট্রিং হিসাবে নির্ধারিত হয়ে গেলে, সেই ভেরিয়েবলের যে কোনও কিছু নির্ধারিত হয় কেবল স্ট্রিং হিসাবে বিবেচিত হবে। উদাহরণস্বরূপ নীচের কোডটি দেখুন।
কোড:
সাব স্ট্রিং_ট_ডেট () Dim k As String k = "10-21" MsgBox k শেষ সাব
উপরের কোডে ভেরিয়েবল "কে" "স্ট্রিং" ডেটা টাইপ হিসাবে সংজ্ঞায়িত হয়েছে এবং এই ভেরিয়েবলের জন্য আমরা মানটিকে "10-21" হিসাবে নির্ধারণ করেছি।
ঠিক আছে, কোডটি চালানো যাক এবং ভিবিএতে বার্তা বাক্সে আমরা কী পাই।
আমরা মানটি কেবল 10-21 হিসাবে পেয়েছি তবে সাধারণত, এই মানগুলি একটি তারিখ হয়, স্ট্রিংয়ের মান নয়। সুতরাং নির্ধারিত ডাটা টাইপটি "স্ট্রিং" হলেও আমরা এখনও ডেটা ধরণের রূপান্তর ফাংশন সিডিএটি ভিবিএ ব্যবহার করে তারিখে রূপান্তর করতে পারি।
কোড:
সাব স্ট্রিং_ট_ডেট () Dim k হিসাবে স্ট্রিং কে = "10-21" এমএসজিবক্স সিডিট (কে) শেষ সাব
উপরের অংশে, মেসেজ বাক্সে ভেরিয়েবল "কে" এর ফলাফলটি দেখানোর আগে আমরা সিডিএটি ফাংশন নির্ধারণ করেছি। একটি ছোট সামঞ্জস্য করা হয়, আসুন এটি কতটা বড় প্রভাব ফেলে তা দেখা যাক।
এখন আমরা ফলাফলটি "তারিখ" হিসাবে আর দেখতে পাচ্ছি না "স্ট্রিং" মান হিসাবে।
উদাহরণ # 2
এখন, উদাহরণের জন্য নীচের কোডটি দেখুন।
কোড:
সাব স্ট্রিং_ট_ডেট () ডিম স্ট্রিং কে হিসাবে 43399 এমএসজিবক্স কে শেষ উপ
উপরের কোডের এই সময়ে সময়ে উপরে বর্ণিত ফলাফলটি "43599" হিসাবে প্রদর্শিত হবে।
তবে একবার আমরা সিডিএটি ফাংশনটি ব্যবহার করলে এটি তারিখের মানে রূপান্তরিত হয়।
কোড:
সাব স্ট্রিং_ট_ডেট () ডিম স্ট্রিং কে হিসাবে 433 ডাব্লু এমএসজিবক্স সিডিট (কে) শেষ সাব
সিডিএটি ফাংশন প্রয়োগের পরে ফলাফলটি নিম্নরূপ।
যেহেতু এক্সেল তারিখের ফর্ম্যাটটি প্রয়োগ করা হয় তখন আমাদের নির্ধারিত সিরিয়াল নম্বর 43599 এর সিরিয়াল নম্বর হিসাবে তারিখটি সংরক্ষণ করে।
তারিখটি সঠিকভাবে পড়তে আমরা "DD-MMM-YYYY" হিসাবে ফর্ম্যাটটি প্রয়োগ করতে পারি।
কোড:
সাব স্ট্রিং_টো_ডেট 1 () ডিম কে স্ট্রিং ডিম ডেট ভ্যালু হিসাবে তারিখ কে = 43599 ডেটভ্যালু = সিডিট (কে) এমএসজিবক্স ফর্ম্যাট (তারিখভ্যালু, "ডিডি-এমএমএম-ওয়াইওয়াইওয়াই") শেষ সাব
উপরের দিকে, আমি ফলাফল সংরক্ষণের জন্য একটি অতিরিক্ত ভেরিয়েবল ঘোষণা করেছি। এই ভেরিয়েবলের জন্য, আমি সিডিএটি রূপান্তর ফাংশন প্রয়োগ করেছি।
এরপরে, আমি "ডিডি-এমএমএম-ওয়াইওয়াইওয়াই" ফর্ম্যাটটি প্রয়োগ করতে ফরমেট ফাংশনটি ব্যবহার করেছি এবং ফলাফলটি নীচের মত প্রদর্শিত হবে।
এটির সাহায্যে আমরা ডে পার্ট এবং মাসের অংশটি পরিষ্কারভাবে পড়তে পারি। এটি এক্সেলে আপনার সিস্টেমের তারিখের ফর্ম্যাটের উপরও নির্ভর করে, যেহেতু আমার সিস্টেমের তারিখের ফর্ম্যাটটি "এমএম-ডিডি-ওয়াইওয়াইওয়াই" ছিল এটি এর মতো দেখাচ্ছে তবে এটি বিন্যাসে বাধা হওয়া উচিত নয়।
উদাহরণ # 3
এখন আমরা বাস্তবে দেখব কীভাবে কার্যপত্রক কক্ষগুলিতে তারিখগুলি পাঠ্য মান হিসাবে ফর্ম্যাট করা হয়। নীচে একটি কার্যপত্রকটিতে পাঠ্য হিসাবে সঞ্চিত তারিখগুলির চিত্র রয়েছে।
A2 থেকে A12 কলামে আমাদের তারিখের সন্ধানের মান রয়েছে তবে আমরা যখন ফর্ম্যাট ট্যাবটি দেখি তখন এটি "পাঠ্য" ফর্ম্যাটটি দেখায়। এখন আমাদের এই মানগুলি পাঠ্য থেকে তারিখে রূপান্তর করতে হবে।
নীচে পাঠ্য-বিন্যাসিত তারিখের মানগুলিকে প্রকৃত তারিখে রূপান্তর করতে আমি লিখেছি।
কোড:
সাব স্ট্রিং_টো_ডেট ২ () ডিম কে লম্বা হিসাবে 'ডেটা একাধিক কক্ষে থাকে তাই প্রতিটি কোষের মধ্য দিয়ে লুপের দরকার হয়' কে = 2 থেকে 12 এর জন্য লুপের জন্য খুলুন 'ডেটা দ্বিতীয় সারি থেকে শুরু হয়ে 12 তম সারিতে শেষ হয়, সুতরাং 2 থেকে 12 ঘর (কে, ২)। মূল্য = সিডিট (সেল (কে, 1)। মূল্য) পরবর্তী কে শেষ উপ
আপনি যদি কোডটি চালান তবে এটি আমাদের নীচের ফলাফল দেবে।
মনে রাখার মতো ঘটনা
- সিডিএটি একটি ডেটা ধরণের রূপান্তর ফাংশন তবে ভিবিএ স্ট্রিং সঞ্চিত তারিখটিকে প্রকৃত তারিখের মানগুলিতে রূপান্তর করতে ব্যবহার করা যেতে পারে।
- সিডিএটি ফাংশন ফর্ম্যাটটির ফলাফল কেবলমাত্র সিস্টেমের তারিখের ফর্ম্যাটের উপর নির্ভর করে।
- তারিখগুলি এক্সেলে সিরিয়াল নম্বর হিসাবে সঞ্চিত থাকে, তাই তাদের তারিখ হিসাবে দেখানোর জন্য ফর্ম্যাটিং প্রয়োজন।