সুচিপত্র
যখনই আপনার প্রয়োজন হয় আপনি একটি শীট থেকে অন্য শীট বা ওয়ার্কবুকে একটি পরিসর কপি করতে পারেন৷ কপি এবং পেস্ট বিভিন্ন ধরনের আছে. এই নিবন্ধটি অনুসরণ করে, আপনি অন্য শীটে এক্সেল VBA কপি পরিসর ব্যবহার করার বিভিন্ন উপায় জানতে পারবেন।
ব্যাখ্যাটিকে প্রাণবন্ত করতে, আমি একটি নমুনা ডেটাসেট ব্যবহার করতে যাচ্ছি যা নির্দিষ্ট ব্যক্তির ব্যক্তিগত তথ্য উপস্থাপন করে। . ডেটাসেটে 4টি কলাম রয়েছে। এই কলামগুলি হল প্রথম নাম, শেষ নাম, সম্পূর্ণ নাম, এবং ইমেল ।
অনুশীলনের জন্য ওয়ার্কবুক ডাউনলোড করুন
ভিবিএ রেঞ্জ অন্য একটি শীটে কপি করুন। ফরম্যাট সহ অন্য একটি শীটেযখনই আপনি ফরম্যাট সহ একটি শীট থেকে অন্য শীটে একটি পরিসর কপি করতে চান আপনি সহজভাবে <3 ব্যবহার করে এটি করতে পারেন 2>VBA ।
এখানে, আমি ডেটাসেট শীট থেকে ফরম্যাট শীট
তেএকটি রেঞ্জ কপি করব। 0>আসুন প্রক্রিয়াটি শুরু করা যাক,প্রথমে, ডেভেলপার ট্যাব >> খুলুন। ভিজ্যুয়াল বেসিক
এছাড়াও আপনি VBA <খুলতে ALT + F11 কীবোর্ড ব্যবহার করতে পারেন 3>সম্পাদক।
এরপর, এটি অ্যাপ্লিকেশনের জন্য মাইক্রোসফ্ট ভিজ্যুয়াল বেসিক নামে একটি নতুন উইন্ডো খুলবে।
সেখান থেকে, ঢোকান <3 খুলুন।>>> মডিউল নির্বাচন করুন।
A মডিউল খুলবে তারপর খোলাতে নিম্নলিখিত কোডটি টাইপ করুন >> ম্যাক্রো দেখুন
➤ একটি ডায়ালগ বক্স পপ আপ হবে৷
এখন, ম্যাক্রো নাম থেকে Copy_Range_BelowLastCell_AnotherSheets ও নির্বাচন করুন ম্যাক্রো-এ এর মধ্যে ওয়ার্কবুক নির্বাচন করুন।
অবশেষে, চালান নির্বাচিত ম্যাক্রো ।
অতএব, এটি নির্বাচিত পরিসরটি কপি করবে এবং অন্য শীটের শেষ সারি থেকে এটি পেস্ট করবে .
8. VBA অন্য ওয়ার্কবুকের শেষ সারিতে একটি রেঞ্জ কপি করুন
যদি আপনি কপি করতে চান 3>অন্য একটি ওয়ার্কবুক শীটের শেষ সারি পর্যন্ত আপনি VBA ও ব্যবহার করতে পারেন।
এখানে, আমি ডেটাসেট2 থেকে একটি পরিসর কপি করব শীট থেকে Book2 এর Sheet1 কিন্তু প্রথম অ-শূন্য ঘর থেকে।
প্রক্রিয়া শুরু করতে,
প্রথমে, ডেভেলপার ট্যাব খুলুন >> ভিজ্যুয়াল বেসিক
এছাড়াও আপনি VBA এডিটর খুলতে ALT + F11 কীবোর্ড ব্যবহার করতে পারেন।
এরপর, এটি অ্যাপ্লিকেশনের জন্য Microsoft Visual Basic এর একটি নতুন উইন্ডো খুলবে।
সেখান থেকে, Insert <3 খুলুন>>> মডিউল নির্বাচন করুন।
A মডিউল খুলবে তারপর খোলা মডিউল এ নিম্নলিখিত কোডটি টাইপ করুন।
9025
এখানে, আমি উপ পদ্ধতি Copy_Range_BelowLastCell_To_Another_Workbook যেখানে wsCopy এবং ws গন্তব্য <ঘোষণা করেছি 3>হচ্ছে ওয়ার্কশীট টাইপ, lCopyLastRow এবং lDestLastRow দীর্ঘ টাইপ।
প্রথম, কপি করার জন্য শীট এবং গন্তব্য পত্রকের জন্য ভেরিয়েবল সেট করতে সেট ব্যবহার করা হয়।
পরবর্তীতে, কপি পরিসরে A কলামের ডেটার উপর ভিত্তি করে শেষ সারিটি খুঁজে বের করার জন্য সারি পদ্ধতি ব্যবহার করা হয়েছে।
আবার, সারি পদ্ধতি ব্যবহার করা হয়েছে গন্তব্য পরিসরে A কলামের ডেটার উপর ভিত্তি করে প্রথম ফাঁকা সারিটি খুঁজে পেতে অফসেট একটি প্রপার্টি নিচে সরানোর জন্যও ব্যবহার করা হয়েছে।
অবশেষে, কপি করা হয়েছে Dataset2 শীট থেকে Excel VBA কপি রেঞ্জ থেকে অন্য Sheet.xlsm ওয়ার্কবুক গন্তব্যে Sheet1 ওয়ার্কবুকের Book2.xlsx<এর ডেটা 3>।
এখন, কোডটি সংরক্ষণ করুন এবং ওয়ার্কশীটে ফিরে যান।
এরপর, ভিউ ট্যাব >> খুলুন। থেকে ম্যাক্রো >> ম্যাক্রো দেখুন
➤ একটি ডায়ালগ বক্স পপ আপ হবে৷
এখন, ম্যাক্রো নাম থেকে Copy_Range_BelowLastCell_To_Another_Workbook নির্বাচন করুন ম্যাক্রো এর মধ্যে ।
অবশেষে, চালান নির্বাচিত ম্যাক্রো ।
অতএব, এটি বিদ্যমান শীট থেকে অন্য ওয়ার্কবুকের শেষ সারিতে নির্বাচিত পরিসর কপি করবে।
<0অনুশীলন বিভাগ
এক্সেল VBA অনুলিপি পরিসরের এই ব্যাখ্যাকৃত উপায়গুলি অনুশীলন করার জন্য আমি ওয়ার্কবুকে একটি অনুশীলন শীট প্রদান করেছি অন্য শীটে।
উপসংহার
এই নিবন্ধে, আমি 8টি বিভিন্ন ধরনের সহজ এবং দ্রুত উপায় ব্যাখ্যা করেছি।এক্সেল VBA অন্য শীটে পরিসীমা অনুলিপি করুন। এই বিভিন্ন উপায়গুলি আপনাকে একটি শীট থেকে অন্য শীট এবং একটি শীট থেকে অন্য ওয়ার্কবুকে একটি পরিসর কপি করতে সাহায্য করবে৷ সবশেষে, আপনার যদি কোনো ধরনের পরামর্শ, ধারণা এবং প্রতিক্রিয়া থাকে তাহলে অনুগ্রহ করে নিচে মন্তব্য করুন।
মডিউল।7485
এখানে, আমি উপ পদ্ধতি কপি_রেঞ্জ_বিথ ফরম্যাট_টুঅনদার_শিট
ঘোষণা করেছি আমি বিদ্যমান শীট থেকে শীট নামের বিন্যাসে কপি করার জন্য রেঞ্জ B1:E10 নিয়েছি।
এখানে, আমি কপি ব্যবহার করেছি নির্বাচিত পরিসর কপি করার পদ্ধতি, কপি পদ্ধতি ফরম্যাট সহ যেকোনও পরিসর কপি করে।
অবশেষে, সংরক্ষণ কোডটি এবং ওয়ার্কশীটে ফিরে যান। .
এরপর, ভিউ ট্যাব >> খুলুন। থেকে ম্যাক্রো >> ম্যাক্রো দেখুন
➤ একটি ডায়ালগ বক্স পপ আপ হবে৷
এখন, ম্যাক্রো নাম থেকে Copy_Range_withFormat_ToAnother_Sheet এছাড়াও ম্যাক্রোতে এর মধ্যে ওয়ার্কবুক নির্বাচন করুন।
অবশেষে, চালান নির্বাচিত ম্যাক্রো ।
অতএব, এটি আমার নির্বাচিত নতুন শীটে ফরম্যাট সহ নির্বাচিত পরিসরটি কপি করবে ফরম্যাট সহ) ।
2. VBA বিন্যাস ছাড়াই অন্য শীটে একটি রেঞ্জ কপি করুন
এটিও VBA ব্যবহার করে ফরম্যাট ব্যতিরেকে অন্য শীটে কপি করা একটি পরিসর।
এখানে, আমি কপি করব <3 ডেটাসেট শীট থেকে বিহীন ফর্ম্যাট শীট পর্যন্ত একটি পরিসর।
আসুন পদ্ধতিটি শুরু করা যাক,
এখন, ডেভেলপার খুলুন ট্যাব >> ভিজ্যুয়াল বেসিক ( ALT + F11 ব্যবহার করুন)
এর পরে, এটি খুলবে অ্যাপ্লিকেশনের জন্য মাইক্রোসফ্ট ভিজ্যুয়াল বেসিক৷
তারপর, খুলুন ঢোকান >> মডিউল নির্বাচন করুন।
A মডিউল খুলবে তারপর খোলা মডিউল এ নিম্নলিখিত কোডটি টাইপ করুন।
3064
এখানে, আমি উপ পদ্ধতি Copy_Range_WithoutFormat_Toanother_Sheet
সীমা নিয়েছি B1:E10 বিদ্যমান শীট থেকে শীটের নাম বিনা ফরম্যাট তে অনুলিপি করতে।
এখানে, আমি নির্বাচিত পরিসরটি অনুলিপি করতে কপি পদ্ধতি ব্যবহার করেছি কিন্তু উল্লেখিত Paste:=xlPasteValues PasteSpecial পদ্ধতিতে যাতে এটি শুধুমাত্র নির্বাচিত পরিসরের মান পেস্ট করবে, বিন্যাস নয়।
অবশেষে , সংরক্ষণ করুন কোডটি এবং ওয়ার্কশীটে ফিরে যান।
এরপর, ভিউ ট্যাব >> খুলুন। থেকে ম্যাক্রো >> ম্যাক্রো দেখুন
➤ একটি ডায়ালগ বক্স পপ আপ হবে৷
এখন, ম্যাক্রো নাম থেকে Copy_Range_WithoutFormat_Toanother_Sheet নির্বাচন করুন এবং এছাড়াও ম্যাক্রোতে এর মধ্যে ওয়ার্কবুকটি নির্বাচন করুন।
অবশেষে, নির্বাচিত ম্যাক্রো চালান।
এভাবে, এটি শুধুমাত্র মান না ফরম্যাট<3 সহ নির্বাচিত পরিসর কপি করবে>.
3. ফরম্যাট এবং কলাম প্রস্থ সহ অন্য শীটে একটি পরিসর কপি করুন
কখনও কখনও আপনি করতে চাইতে পারেন অনুলিপি করুন যে কোনো নির্বাচিত পরিসর যেমন আছে, তার জন্য আপনি ফরম্যাট এবং কলাম প্রস্থ সহ একটি রেঞ্জ কপি করতে পারেন।
এখানে, আমি ডেটাসেট শীট থেকে ফরম্যাট & কলাম প্রস্থ শীট।
VBA ,
ব্যবহার করে কাজটি করার পদ্ধতি দেখতে প্রথমে, ডেভেলপার ট্যাব খুলুন >> ভিজ্যুয়াল বেসিক
এছাড়াও আপনি VBA এডিটর খুলতে ALT + F11 কীবোর্ড ব্যবহার করতে পারেন।
এরপর, এটি অ্যাপ্লিকেশনের জন্য Microsoft Visual Basic-এর একটি নতুন উইন্ডো খুলবে।
সেখানে, ঢোকান খুলুন >> মডিউল নির্বাচন করুন।
A মডিউল খুলবে তারপর খোলা মডিউল এ নিম্নলিখিত কোডটি টাইপ করুন।
2916
এখানে, আমি উপ পদ্ধতি Copy_Range_to_Another_Sheet_with_FormatAndColumnWidth
সীমা নিয়েছি B1:E10 বিদ্যমান শীট থেকে গন্তব্য পত্রকের নাম ফরম্যাট & কলামের প্রস্থ ।
এখানে, আমি নির্বাচিত পরিসরটি অনুলিপি করতে অনুলিপি পদ্ধতি ব্যবহার করেছি। আমি PasteSpecial পদ্ধতিও ব্যবহার করেছি যেখানে আমি উল্লেখ করেছি Paste:=xlPasteColumnWidths যাতে এটি ফর্ম্যাট এবং কলাম প্রস্থ সহ নির্বাচিত পরিসর পেস্ট করে। .
অবশেষে, কোডটি সংরক্ষণ করুন এবং ওয়ার্কশীটে ফিরে যান।
এরপর, ভিউ ট্যাব >> খুলুন। থেকে ম্যাক্রো >> ম্যাক্রো দেখুন
➤ একটি ডায়ালগ বক্স পপ আপ হবে৷
এখন, ম্যাক্রো নাম থেকে Copy_Range_to_Another_Sheet_with_FormatAndColumnWidth নির্বাচন করুন এবং এছাড়াও ম্যাক্রোতে এর মধ্যে ওয়ার্কবুক নির্বাচন করুন।
অবশেষে, নির্বাচিত চালান ম্যাক্রো ।
ফলে, এটি ফরম্যাট এবং কলাম প্রস্থ সহ নির্বাচিত ব্যাপ্তি কপি করবে ।
4. VBA সূত্র সহ অন্য একটি শীটে একটি রেঞ্জ কপি করুন
আপনার ডেটাসেটে কোনো সূত্র থাকলে আপনি কপি করতে চান। কোন চিন্তা করো না! আপনি সূত্রটি অক্ষত রেখে সূত্র অন্য একটি শীটে অনুলিপি করতে পারেন।
এখানে, আমি ডেটাসেট শীট থেকে একটি পরিসর কপি করব Formula শীট
আসুন পদ্ধতি শুরু করা যাক,
শুরু করতে, ডেভেলপার ট্যাব খুলুন >> ভিজ্যুয়াল বেসিক নির্বাচন করুন ( আপনি ALT + F11 কীবোর্ড)
এর পরে, এটি ব্যবহার করতে পারেন অ্যাপ্লিকেশনের জন্য মাইক্রোসফ্ট ভিজ্যুয়াল বেসিক খুলবে।
সেখান থেকে, খুলুন ঢোকান >> মডিউল নির্বাচন করুন।
A মডিউল খুলবে তারপর খোলা মডিউল এ নিম্নলিখিত কোডটি টাইপ করুন।
5301
এখানে, আমি উপ পদ্ধতি Copy_Range_withFormula_ToAnother_Sheet
রেঞ্জ নিয়েছি B1:E10 বিদ্যমান শীট থেকে গন্তব্য পত্রকের নাম WithFormula এ কপি করতে।
এখানে, আমি নির্বাচিত পরিসরটি কপি করার জন্য কপি পদ্ধতি ব্যবহার করেছি। আমি PasteSpecial পদ্ধতিটিও ব্যবহার করেছি যেখানে আমি উল্লেখ করেছি Paste:=xlPasteFormulas যাতে এটি নির্বাচিত পরিসরের সাথে সূত্র বহন করে।
অবশেষে , কোডটি সংরক্ষণ করুন এবং ওয়ার্কশীটে ফিরে যান।
তারপর, ভিউ খুলুন ট্যাব >> থেকে ম্যাক্রো >> ম্যাক্রো দেখুন
➤ একটি ডায়ালগ বক্স পপ আপ হবে৷
এখন, ম্যাক্রো নাম থেকে Copy_Range_withFormula_ToAnother_Sheet এছাড়াও ম্যাক্রোতে এর মধ্যে ওয়ার্কবুক নির্বাচন করুন।
অবশেষে, চালান নির্বাচিত ম্যাক্রো ।
এভাবে, এটি সূত্র সহ নির্বাচিত সমস্ত সেল রেঞ্জ কপি করবে ।
>>>>>>> অনুরূপ রিডিং: >>> 28>
5. স্বয়ংক্রিয় ফিটের সাথে একটি পরিসর অন্য শীটে অনুলিপি করুন
যখন অন্য শীটে একটি পরিসর অনুলিপি করা আপনি অটোফিট পদ্ধতিটিও ব্যবহার করতে পারেন নতুন শীটে VBA থেকে AutoFit কপি করা পরিসরে।
এখানে, আমি ডেটাসেট থেকে একটি পরিসর কপি করব শীট থেকে অটোফিট শীট
আসুন প্রক্রিয়া শুরু করি,
প্রথমে, ডেভেলপার ট্যাব খুলুন >> ভিজ্যুয়াল বেসিক
এছাড়াও আপনি VBA এডিটর খুলতে ALT + F11 কীবোর্ড ব্যবহার করতে পারেন।
পরবর্তীতে, এটি অ্যাপ্লিকেশনের জন্য মাইক্রোসফ্ট ভিজ্যুয়াল বেসিকের একটি উইন্ডো খুলবে৷
তারপর, খুলুন ঢোকান > ;> মডিউল নির্বাচন করুন।
A মডিউল খুলবে তারপর খোলাতে নিম্নলিখিত কোডটি টাইপ করুন মডিউল ।
4130
এখানে, আমি ঘোষণা করেছি সাব পদ্ধতি Copy_Range_withFormat_AutoFit
প্রথমে, আমি ওয়ার্কশীট ডেটাসেট নির্বাচন করেছি। তারপরে বিদ্যমান শীট থেকে AutoFit নামের গন্তব্য শীটে অনুলিপি করতে পরিসরটি B1:E10 নিয়েছি।
এখানে, আমি কপি ব্যবহার করেছি নির্বাচিত পরিসরটি অনুলিপি করার পদ্ধতি এবং AutoFit পদ্ধতিটি প্রদত্ত কলামগুলিকে স্বয়ংক্রিয়ভাবে ফিট করবে B:E ।
অবশেষে, সংরক্ষণ করুন কোডটি এবং যান ওয়ার্কশীটে ফিরে যান।
এরপর, ভিউ ট্যাব >> খুলুন। থেকে ম্যাক্রো >> ম্যাক্রো দেখুন
➤ একটি ডায়ালগ বক্স পপ আপ হবে৷
এখন, ম্যাক্রো নাম থেকে Copy_Range_withFormat_AutoFit এছাড়াও ম্যাক্রোতে এর মধ্যে ওয়ার্কবুক নির্বাচন করুন।
অবশেষে, চালান নির্বাচিত ম্যাক্রো ।
অতএব, এটি কপি করবে নির্বাচিত পরিসর একটি নতুন শীটে এবং এছাড়াও অটোফিট কলামগুলি।
6. VBA অন্য ওয়ার্কবুকে একটি রেঞ্জ কপি করুন
আপনি চাইলে একটি শীট থেকে অন্য শীটে একটি রেঞ্জ কপি ও করতে পারেন একটি ভিন্ন ওয়ার্কবুকের।
এখানে, আমি Book1 এর ডেটাসেট শীট থেকে শিট1 এ একটি পরিসর কপি করব ওয়ার্কবুক।
আসুন পদ্ধতিটি শুরু করা যাক,
প্রথমে, ডেভেলপার ট্যাব >> খুলুন। ভিজ্যুয়াল বেসিক নির্বাচন করুন (y আপনি ALT + F11 কীবোর্ড)
তারপর, ব্যবহার করতে পারেন। এটি খুলবে Microsoft Visualঅ্যাপ্লিকেশনের জন্য মৌলিক।
পরবর্তী, খুলুন ঢোকান >> মডিউল নির্বাচন করুন।
A মডিউল খুলবে তারপর খোলা মডিউল এ নিম্নলিখিত কোডটি টাইপ করুন।
5456
এখানে, আমি উপ পদ্ধতি Copy_Range_WithFormat_Toanother_WorkBook
আমি পরিসীমা নিয়েছি <2 ঘোষণা করেছি>B3:E10 শীটের নাম থেকে ডেটাসেট বিদ্যমান শীট থেকে নতুন ওয়ার্কবুকের নাম Book1 এবং পত্রকের নাম শিট1 ।
এখানে, আমি নির্বাচিত পরিসরটিকে নতুন ওয়ার্কবুকে কপি করার জন্য কপি পদ্ধতি ব্যবহার করেছি।
অবশেষে, সংরক্ষণ করুন কোডটি এবং ওয়ার্কশীটে ফিরে যান।
এরপর, দেখুন ট্যাব খুলুন >> থেকে ম্যাক্রো >> ম্যাক্রো দেখুন
➤ একটি ডায়ালগ বক্স পপ আপ হবে৷
এখন, ম্যাক্রো নাম থেকে Copy_Range_WithFormat_Toanother_WorkBook নির্বাচন করুন এছাড়াও ম্যাক্রোতে এর মধ্যে ওয়ার্কবুক নির্বাচন করুন।
অবশেষে, চালান নির্বাচিত ম্যাক্রো ।
এখন, এটি ডেটাসেট শীট থেকে অন্য ওয়ার্কবুকে কপি করবে নির্বাচিত পরিসর।
7. অন্য একটি পত্রকের শেষ সারিতে একটি পরিসর অনুলিপি করুন
যেকোন ক্ষেত্রে, যদি আপনি অন্য শীটে একটি পরিসর কপি করতে চান একটি নির্দিষ্ট সেল বা শেষ সেল থেকে আপনি VBA ব্যবহার করে এটি করতে পারেন।
প্রক্রিয়ায় প্রবেশ করার আগে, আমি আপনাকে বলতে চাই যে, আমি দুটি নতুন শীট নিয়েছি পুরো নাম, ইমেল, এবং ঠিকানা ।
আসুন প্রথমে ডেটাসেট2 শীটটি পর্যবেক্ষণ করি।
এখানে শেষ কক্ষের নিচে শীট আছে।
এখানে, আমি কপি করব থেকে একটি রেঞ্জ 2>ডেটাসেট2 শীট শেষ কক্ষের নীচে কিন্তু প্রথম অ-ফাঁকা ঘর থেকে।
শুরু করতে, ডেভেলপার ট্যাব >> খুলুন। ভিজ্যুয়াল বেসিক
এর পরে, এটি খুলবে অ্যাপ্লিকেশনের জন্য মাইক্রোসফ্ট ভিজ্যুয়াল বেসিক।
তারপর, খুলুন ঢোকান >> মডিউল নির্বাচন করুন।
A মডিউল খুলবে তারপর খোলা মডিউল এ নিম্নলিখিত কোডটি টাইপ করুন।
1513
এখানে, আমি উপ পদ্ধতি Copy_Range_BelowLastCell_AnotherSheets
প্রথম, আমি শীট নির্বাচন করেছি ডেটাসেট2 এবং তারপরে শেষ সারি গণনা করার জন্য সারি পদ্ধতি ব্যবহার করে এবং গণনা করা সারিটিকে lr এ রাখা হয়।
তারপর নেওয়া হয় পরিসর A2:C এবং lr বিদ্যমান শীট থেকে গন্তব্য পত্রকের নাম Below Last Cell এ কপি করতে।
আবার, শেষটি গণনা করার জন্য সারি পদ্ধতি ব্যবহার করুন শেষ কক্ষের নিচে নামে আরেকটি শীটের সারি এবং গণনা করা সারিটিকে lrAnotherSheet এ রেখেছি।
এখানে, আমি কপি পদ্ধতি ব্যবহার করেছি নির্বাচিত পরিসরটি অনুলিপি করতে এবং AutoFit পদ্ধতি প্রদত্ত কলামগুলিকে স্বয়ংক্রিয়ভাবে ফিট করবে A:C ।
অবশেষে, সংরক্ষণ করুন কোডটি এবং ফিরে যান ওয়ার্কশীটে।
এরপর, ভিউ ট্যাব খুলুন >> ম্যাক্রো থেকে