অ্যাপলস্ক্রিপ্ট: .xls কে .csv এ রূপান্তর করতে এক্সেলকে স্বয়ংক্রিয় করুন


4

আমি এমএস এক্সেল ভি 15.15 এর জন্য অ্যাপলস্ক্রিপ্ট ব্যবহার করে .xls ফাইলের একটি ফোল্ডারটিকে .csv এ রূপান্তর করতে ব্যাচের প্রক্রিয়াটির চেষ্টা করছি। আমি এটির মডেল করতে অনলাইনে পাওয়া একটি নমুনা ব্যবহার করছি:

set theOutputPath to (path to desktop folder as string) & "My Saved Workbook.csv"
  tell application "Microsoft Excel"
    tell active workbook
      save workbook as filename theOutputPath file format CSV file format
    end tell
  end tell

এটি এমন স্ক্রিপ্ট যা ধারাবাহিকভাবে ব্যর্থ হয়, যদিও এটি মডেলের সাথে সাদৃশ্যযুক্ত বলে মনে হচ্ছে:

set csv_folder to "Macintosh HD:Users:Me:CSV:" & file_name as string
    tell application "Microsoft Excel"
        open Source_file
        tell active workbook
            save workbook as filename csv_folder file format CSV Mac file format-->
           (*This generates error "Microsoft Excel got an error: Parameter error." number -50 *)
        end tell
    end tell

আমি চেষ্টাও করেছি:

set csv_folder to "Macintosh HD:Users:Me:CSV:" & file_name & ".csv" as string

tell application "Microsoft Excel"
    open Source_file
        tell active workbook
            save workbook as filename csv_folder -->
           (*This usually generates error "Microsoft Excel got an error:
            Parameter error." number -50 the first time it is run, 
              then works the 2nd time *)
        end tell
end tell

সম্পাদনা: এই পরবর্তী স্ক্রিপ্টটি যদিও এটি সম্পূর্ণ হয় তবে সত্যিকারের সিএসভি ফাইলের ফলাফল হয় না, যখন আমি বিবিএডিট দিয়ে এটি খুলি তখন এটি ফাইলের সামগ্রীগুলি নয়, কোড দেখাচ্ছে।

আমি "স্ট্রিং হিসাবে" ব্যবহার না করে সিভি_ফোল্ডার সেট করার চেষ্টা করেছি। কোনও ধারণা কেন এটি ব্যর্থ হয়? এটি সিনট্যাক্সটি "ফাইলের নাম হিসাবে আউটপুটপথ ফাইল ফর্ম্যাট সিএসভি ফাইল ফর্ম্যাট হিসাবে ওয়ার্কবুক সংরক্ষণ করুন" পছন্দ করবে বলে মনে হচ্ছে না।

উত্তর:


4

জন্য এক্সেল V15 , একটি posix পথ, ভালো ব্যবহার করুন:

set theOutputPath to POSIX path of ((path to desktop folder as string) & "My Saved Workbook.csv")
tell application "Microsoft Excel"
    tell active workbook
        save workbook as filename theOutputPath file format CSV Mac file format with overwrite
    end tell
end tell

সম্পাদনা 1 -

আমি এটি ভি 15.15 এবং ভি 15.16 এ পরীক্ষা করে দেখি , গন্তব্য ফোল্ডারে সদ্য খোলা এক্সেল ফাইল না থাকলে এটি একটি বাগ। সুতরাং এটি ব্যবহার করুন

set theOutputPath to POSIX path of ((path to desktop folder as string) & "My Saved Workbook.csv")
set parentFolder to (do shell script "dirname " & quoted form of theOutputPath) as POSIX file -- get the parent folder 

tell application "Microsoft Excel"
    alias parentFolder -- a folder where to save a new file, workaround to a bug when the destination folder doesn't contains a recently opened Excel file
    save workbook as active workbook filename (theOutputPath) file format CSV Mac file format with overwrite
end tell

সম্পাদনা 2 -

অথবা এর মতো একটি খালি ফাইল তৈরি করুন

set theOutputPath to POSIX path of (path to desktop folder as string) & "My Saved Workbook.csv"
do shell script "touch " & quoted form of theOutputPath -- create an empty file
set theOutputPath to theOutputPath as POSIX file
tell application "Microsoft Excel"
    save workbook as active workbook filename (theOutputPath) file format CSV Mac file format with overwrite
end tell

3 সম্পাদনা করুন : আমার অন্য ধারণা ছিল, এটি হ'ল সরল স্ক্রিপ্ট।

set theOutputPath to (path to desktop folder as string) & "My Saved Workbook.csv"
tell application "Microsoft Excel"
    alias theOutputPath --  workaround to a bug when the destination folder doesn't contains a recently opened Excel file
    save workbook as active workbook filename theOutputPath file format CSV Mac file format with overwrite
end tell

সাহায্যের জন্য ধন্যবাদ. আপনি যে স্ক্রিপ্টটি সরবরাহ করেছেন তা "ওভাররাইটের সাথে আউটপুটপথ ফাইল ফর্ম্যাট সিএসভি ম্যাক ফাইল ফর্ম্যাট হিসাবে ফাইলের নাম হিসাবে আউটপুটপথ ফাইল ফর্ম্যাট হিসাবে সংরক্ষণ করুন" লাইনের জন্য একই পরামিতি ত্রুটি প্রদান করে। আমি বিশ্বাস করতে শুরু করেছি এটি এক্সেল ফর ম্যাক ভি ১৫ এর একটি পরিবর্তন হিসাবে সংরক্ষণ হিসাবে [ফাইলের ধরণ] বিকল্পগুলির কোনওটিই নয় যেমন এক্সেল ১৫ এ আমি কাজ পেয়েছি
গর্ডন

আমি আমার উত্তর আপডেট।
jackjr300

1

দেখা যাচ্ছে যে ম্যাকের জন্য অফিস 2016 এর পরিবর্তনের কারণে প্যারামিটার ত্রুটি।

http://preview.alturl.com/f8srb

এই থ্রেড থেকে আমি যা শিখেছি তা থেকে এক্সেল ভি 15 কেবল automatically / লাইব্রেরি / কনটেইনার / কম.মাইক্রোসফট.এক্সেল / পথের মধ্যে স্বয়ংক্রিয়ভাবে (অ্যাপলস্ক্রিপ্ট দ্বারা ট্রিগার) লিখতে পারে। দেখে মনে হচ্ছে আমাকে এক্সেলের পূর্ববর্তী সংস্করণে ফিরে যেতে হবে, বা সম্ভবত ফোল্ডারে ফাইলগুলি লিখতে হবে এবং তারপরে কাঙ্ক্ষিত স্থানে অনুলিপি করতে হবে। কি পিটা।

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