এক্সেল ভিবিএ সঠিক আকারের মাত্রা পাচ্ছে না


0

আমার এক্সেল ফাইলের মুদ্রণ অঞ্চলে আকারগুলি রাখার জন্য আমার কাছে একটি ম্যাক্রো রয়েছে have ব্রিফলি, এটি করার জন্য আমি নির্বাচিত আকারগুলির প্রস্থ ( Application.Selection) ব্যবহার করি এবং মুদ্রণ ক্ষেত্রের প্রস্থ থেকে এটি সরিয়ে রাখি তারপরে এটি মোট নির্বাচিত আকারগুলিতে বিভক্ত করব।

এটি সময়ের 97% কাজ করে। 3% এটি কাজ করে না কারণ এক্সেলটি মনে হয় সঠিক আকারের ডাইমসনটি পাওয়া যায় না। প্রস্থটি ≈50% দ্বারা বন্ধ রয়েছে।

সুতরাং আমি ভাবছি কীভাবে এবং কেন এটি ঘটে? এটি এলোমেলো মনে হয় যদিও এটি ঘটে তবে এটি তখনই ঘটে যখন একাধিক আকৃতি নির্বাচন করা হয়। যদি আমি স্ক্রিপ্টটি শুধুমাত্র সমস্যাযুক্ত আকার নির্বাচন করে চালিত করি তবে মাত্রা ঠিক আছে।

এটি অন্য কারও সাথে কী ঘটেছিল এবং কীভাবে এটি সংশোধন করা যায়?

- এখানে এক্সেলের আকারের আকার রয়েছে:

এক্সেল থেকে আকার আকার

এই মাত্রাগুলি থেকে এবং জেনে রাখা যে এক্সেল ভিবিএর আকারগুলি পয়েন্টগুলিতে রয়েছে তারা উচ্চতা ≈ 92.41 এবং প্রস্থ 191.91 এ অনুবাদ করবে।

- দুটি আকার নির্বাচন করা হলে (সংগ্রহের মধ্যে সংরক্ষণ করা হয় collShp) আমি ভিবিএ থেকে যে আকারটি পেয়েছি তা এখানে :

দুটি আকারের নির্বাচন

- কেবলমাত্র সমস্যাযুক্ত আকারগুলি নির্বাচন করা হলে এখানে:

কেবল সমস্যাযুক্ত আকারের নির্বাচন

+++ কিছু কোড যুক্ত করতে সম্পাদিত: +++ আকারগুলির সাথে বিশৃঙ্খলাবদ্ধ কোডটির অংশ এখানে। দেখে মনে হচ্ছে এটি এলোমেলো কারণ আমি কেবল একই ফাইলটি খুললাম এবং মাপগুলি এখন ঠিক আছে ... আকারগুলি সরল স্ক্রিন শট যা "প্রিন্টস্ক্রিনড" এর মতো এবং সরাসরি এক্সেল ফাইলটিতে আটকানো হয়।

Sub centerShapeCompressed()

    If VarType(Application.Selection) <> 9 Then Exit Sub 'Type "9" is type "Object"

    Dim shp As Object

    Dim xlapp As Application
    Set xlapp = Excel.Application

    On Error Resume Next
    Debug.Print Application.Selection.Count 'if "Selection" contains less than 2 -> throws an error

    If Err.Number = 0 Then 'If Selection.Count > 1

        On Error GoTo 0

        Dim collShp As Collection
        Set collShp = New Collection
        For Each shp In Application.Selection
           collShp.Add shp, shp.Name
        Next shp

    Else

        Set shp = Application.Selection

    End If

End Sub

1
আপনার কোড না জেনে আপনাকে সহায়তা করা সম্ভব নয়। দয়া করে একটি ন্যূনতম উদাহরণ ভাগ করুন যেখানে ত্রুটিটি পুনরুত্পাদন করা যেতে পারে, ত্রুটির আগে শিটের একটি স্ক্রিনশটও।
মাতা জুহেজ

@ MátéJuhász; সেটে কোনও ত্রুটি নেই বলে পত্রকটি পরিবর্তন হয় না। ত্রুটিটি আকারের আকারের একটি ভুল ব্যাখ্যা বলে মনে হচ্ছে যা এখন আরও এলোমেলো মনে হচ্ছে যেহেতু একই ফাইলটি কোনও পরিবর্তন ছাড়াই কাজ করার পরে আপনার মন্তব্যের জবাব দেওয়ার জন্য পুনরায় খোলা হয়েছে। কেবলমাত্র "দৃশ্যমান" ত্রুটিটি হ'ল আমি ভিবিই থেকে "স্থানীয় উইন্ডো" এ ফলাফলগুলি দেখিয়েছি।
সরল MAN

1
আপনি বিভাগ এবং আকার এবং মাপ আলোচনা। এগুলি খুব বড় সংখ্যা এবং খুব ছোট নির্ভুল সংখ্যা। নির্ভুলতা সম্পর্কে চিন্তা করুন। আপনি পরিমাপ জন্য কি ব্যবহার করছেন? কি ডিআইএম? আমি আপনার প্রকল্পের বাকি বা অন্য কোনও কোড সম্পর্কে জানি না। আমি প্রদত্ত কোডটিতে পরিমাপ দেখতে পাচ্ছি না। আমরা কেবল অনুমান করতে পারি, এবং অন্ধভাবে বুট করতে পারি।
এজেবাইটস

@ejbytes; আমার সরঞ্জামটি কাজ করে, এটি কেবলমাত্র আমি এক্সেল থেকে এলোমেলোভাবে ভুল মাত্রা পাই। প্রশ্নে বর্ণিত হিসাবে পরিমাপগুলি "পয়েন্টগুলিতে" রয়েছে। পরিমাপগুলি ডাবল ভেরিয়েবলগুলিতে সঞ্চয় করা হয়। এটি প্রদর্শিত হয়নি কারণ ভেরিয়েবলের প্রস্থ স্থাপনের আগে, তৃতীয়টির তুলনায় দ্বিতীয় ছবিতে প্রদর্শিত হিসাবে উত্সটি ইতিমধ্যে বন্ধ রয়েছে।
সরল MAn

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