একাধিক পত্রক সহ এক্সেল ফাইলকে কীভাবে সিএসভি ফাইলের সেটগুলিতে রূপান্তর করবেন?


23

আমার কাছে 20 টি শীটযুক্ত একটি এক্সেল ফাইল রয়েছে। 20 সিএসভি ফাইলগুলিতে দ্রুত ফাইলটি রূপান্তর করার কোনও উপায় আছে - প্রতিটি শীটের জন্য একটি?

আমি অবশ্যই এটি ম্যানুয়ালি করতে পারি, তবে আমাকে এই ফাইলগুলি অনেকগুলি প্রসেসিং করতে হবে, তাই একরকম কমান্ড লাইন ইউটিলিটি (বা এমনকি এক্সেল কমান্ড লাইন সুইচগুলি) রাখা ভাল হবে।

উত্তর:


17

ভেমবুটেক দ্বারা পদ্ধতিটি অবশ্যই একটি আরও পালিশযুক্ত সমাধান। এখানে একটি লাইটওয়েট ভিবিএ ম্যাক্রো যা একটি ওয়ার্কবুক থেকে সমস্ত শীট রফতানি করবে।

সক্রিয় ওয়ার্কবুক ফোল্ডারে যায় সমস্ত নাম workbookname_sheetname.csv

Sub exportcsv()
Dim ws As Worksheet
Dim path As String

path = ActiveWorkbook.path & "\" & Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1)
For Each ws In Worksheets
    ws.Activate
    ActiveWorkbook.SaveAs Filename:=path & "_" & ws.Name & ".csv", FileFormat:=xlCSV, CreateBackup:=False
Next
End Sub

সম্পাদনা করুন:

মন্তব্যের জন্য। আসল ম্যাক্রো কেবল সেভটি ফাংশন হিসাবে ব্যবহার করে (যা মূল বন্ধ করার মতো)। আসল ওপেনটি ছেড়ে যাওয়ার সময় আপনি যদি এটি করতে চান তবে আপনাকে একটি নতুন ওয়ার্কবুকে অনুলিপি করতে হবে, সংরক্ষণ করতে হবে এবং নতুন ওয়ার্কবুকটি বন্ধ করতে হবে।

Sub exportcsv()
Dim ws As Worksheet
Dim path As String

path = ActiveWorkbook.path & "\" & Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1)
For Each ws In Worksheets
    ws.Copy
    ActiveWorkbook.SaveAs Filename:=path & "_" & ws.Name & ".csv", FileFormat:=xlCSV, CreateBackup:=False
    ActiveWorkbook.Close False
Next
End Sub

আমি কেবল Run-time error '1004': Application-defined or object-defined errorম্যাকের জন্য আমার এক্সেল এ উঠছি।
ব্রায়ান

8

ব্যাচের স্ক্রিপ্টের পরিবর্তে আপনি সিএসভি রূপান্তরকারীতে এক্সএলএস ব্যবহার করতে পারেন যা আপনাকে আরও ভাল ব্যবহারকারী ইন্টারফেস দেবে

প্রত্যক্ষ লিঙ্ক: http://cwestblog.com/wp-content/uploads/2013/04/XLS-to-CSV- কনভার্টার-1.1.0.zip

.HTA ফাইলটি আনজিপ করুন।

.HTA ফাইলে ডাবল ক্লিক করুন

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

যেখানে আপনার xls ফাইল রয়েছে সেই ফোল্ডারটি সন্ধান করুন

সিএসভি নামকরণের স্কিমা নির্বাচন করুন এবং সূচনা রূপান্তরটি ক্লিক করুন যা ফোল্ডারে থাকা সমস্ত এক্সএলএস ফাইলকে সিএসভি ফাইলগুলিতে রূপান্তর করবে start

যদি আপনার ফোল্ডারে 3 টি শীটযুক্ত 3 এক্সএল ফাইল থাকে তবে এটি প্রতিটি শিটের জন্য 9 টি সিএসভি ফাইল তৈরি করতে পারে এবং আপনি সিএসভি নামকরণ স্কিমা সহ সিএসভি ফাইলটি সনাক্ত করতে পারবেন

আশাকরি এটা সাহায্য করবে!


6

এখানে একটি পাইথন স্ক্রিপ্ট হয় getsheets.py ( মিরর ), আপনি ইনস্টল করা উচিত pandasএবং xlrdআপনি এটি ব্যবহার করে।

এটি চালান:

pip3 install pandas xlrd  # or `pip install pandas xlrd`

এটি কিভাবে কাজ করে?

$ python3 getsheets.py -h
Usage: getsheets.py [OPTIONS] INPUTFILE

Convert a Excel file with multiple sheets to several file with one sheet.

Examples:

    getsheets filename

    getsheets filename -f csv

Options:
-f, --format [xlsx|csv]  Default xlsx.
-h, --help               Show this message and exit.

কয়েকটি এক্সএলএক্সএক্সে রূপান্তর করুন:

$ python3 getsheets.py goods_temp.xlsx
Sheet.xlsx Done!
Sheet1.xlsx Done!

All Done!

কয়েকটি সিএসভিতে রূপান্তর করুন:

$ python3 getsheets.py goods_temp.xlsx -f csv
Sheet.csv Done!
Sheet1.csv Done!

All Done!

1
এছাড়াও: pip3 install openpyxl click ... এবং তারপরে আমি ImportError: cannot import name 'get_column_letter'প্যান্ডাস এক্সেল.পি এর 513 লাইনে চলেছি; আমার ধারণা আমার পাণ্ডা ইনস্টলটি কোনওভাবে ভেঙে গেছে।
জেমসন কুইন

3

আপনার ডকুমেন্টস ফোল্ডারে ট্যাবগুলি সংরক্ষণ করতে এক্সটেনডঅফিস থেকে একটি ম্যাক্রো :

Sub ExportSheetsToCSV()
    Dim xWs As Worksheet
    Dim xcsvFile As String
    For Each xWs In Application.ActiveWorkbook.Worksheets
        xWs.Copy
        xcsvFile = CurDir & "\" & xWs.Name & ".csv"
        Application.ActiveWorkbook.SaveAs Filename: = xcsvFile, _
        FileFormat: = xlCSV, CreateBackup: = False
        Application.ActiveWorkbook.Saved = True
        Application.ActiveWorkbook.Close
    Next
End Sub
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.