এক্সেল ডাটা এক্সপোর্ট ফিক্সিং নম্বর ত্রুটি/সবুজ ত্রিভুজ অপসারণ

একটি তৃতীয় পক্ষের কম্পোনেন্ট ব্যবহার করে ডেটা রপ্তানি করার পরে এক্সেল শীট মধ্যে তথ্য সঠিকভাবে টাইপ না হয়। এক্সেল মনে করে যে কয়েকটি মান হল স্ট্রিং যখন তারা সংখ্যা এবং একটি সামান্য সবুজ ত্রিভুজ দেখায়।

আমরা এই সংশোধন করার জন্য কোডেড করেছি:

For Each objCell As Microsoft.Office.Interop.Excel.Range In objWorkSheetReport.Range(objWorkSheetReport.Cells(1, 1), objWorkSheetReport.Cells(Me.RowCount + 10, Columns.Count + 10)).Cells
    If IsNumeric(objCell.Value) Then
        objCell.Value = CDbl(objCell.Value)
    End If
Next

এই সব সবুজ সবুজ ত্রিভুজ মুছে ফেলা কিন্তু সত্যিই ধীর।

প্রশ্ন

সবুজ ত্রিভুজ দেখা যায় না তাই দ্রুত তথ্য একটি বিন্যাস রূপান্তর একটি দ্রুত উপায় আছে?

4

1 উত্তর

ব্যবহার করুন। বিশেষ কেলস() রেঞ্জের পদ্ধতিটি পরিবর্তিত করার জন্য কেবলমাত্র সেই কোষগুলিকে সংকুচিত করতে হবে।

একটি সংখ্যার <�কোড> সংকীর্ণ রেঞ্জ </কোড> এবং একটি ওয়ার্কশীট <�কোড> পত্রক ( A1: A8 এবং আপনার কোডের জন্য objWorksheetReport এর জন্য আপনার পরিসীমা প্রতিস্থাপন করে) পত্রক)

NarrowedRange = 
    Sheet.Range("A1:A8").SpecialCells(Excel.XlCellType.xlCellTypeConstants,
                                      Excel.XlSpecialCellsValue.xlTextValues)

আপনার মূল পরিসরের শুধুমাত্র পাঠ্য মান উপাদানগুলি পাবেন, তাই কেবল সেই অনুযায়ী পরিবর্তন করুন।

4
যোগ
@ কোডিং আপনি অপারেশন করছেন যখন আপনি শীট খোলা আছে? আপনি যদি ইঞ্জিনটিকে ব্যাকগ্রাউন্ডে কাজ করতে দেন তবে এটি দ্রুত গতিতে করবে। যদি আপনি এটি খোলা থাকা আবশ্যক হন, তাহলে স্ক্রিন আপআপ করা হচ্ছে আপনার কত সারি আছে? আমি মনে করলাম বিশেষসকল </কোড> তাড়াতাড়ি তাড়াতাড়ি চাপবে, তাই আমার ভাল লাগছে। অন্য সব ব্যর্থ হয়, এই ধরনের অপারেশন অপ্টিমাইজেশন সম্পর্কে প্রোগ্রামার এর উপর একটি প্রশ্ন সেট আপ।
যোগ লেখক jonsca, উৎস
এটি এখনও একটি সত্যিই ধীর অপারেশন। এটা গতিতে কোন উপায় নেই?
যোগ লেখক CodingBarfield, উৎস