Module
Contents
Index 🔎︎

# Dim Statement

একটি ভেরিয়েবল অথবা অ্যারে ডিক্লেয়ার করে।

যদি ভেরিয়েবলসমূহ কমা দ্বারা ভাগ করা থাকে (যেমন, DIM sPar1, sPar2, sPar3 AS STRIN), তাহলে শুধুমাত্র ভেরিয়েন্ট ভেরিয়েবল নির্ধারণ করা যাবে। প্রতিটি ভেরিয়েবলের জন্য একটি পৃথক বর্ণনা ব্যবহার করুন।

    Dim sPar1 As String
    Dim sPar2 As String
    Dim sPar3 As String

Dim এর মাধ্যমে সাবরুটিনের মধ্যে লোক্যাল ভেরিয়েবল ডিক্লেয়ার করা হয়। গ্লোবাল ভেরিয়েবলসমূহ PUBLIC অথবা PRIVATE স্টেটমেন্টের সাহায্যে ডিক্লেয়ার করা হয়।

## সিনট্যাক্স:

    [ReDim]Dim VarName [(start To end)] [As VarType][, VarName2 [(start To end)] [As VarType][,...]]

## প্যারামিটার:

VarName: যে কোন চলক অথবা অ্যারে নাম।

শুরু, সমাপ্ত: সংখ্যাসূচক মান অথবা ধ্রুবক যা এলিমেন্টের পরিমাণ (NumberElements=(end-start)+1) এবং ইনডেক্সের পরিসর নির্ধারণ করে থাকে।

শুরু অথবা সমাপ্ত সংখ্যাসূচক এক্সপ্রেশন হতে পারে যদি ReDim প্রসিজার স্তরে প্রয়োগ করা হয়।

VarType: কীওয়ার্ড যা একটি ভেরিয়েবলের ডাটা টাইপ ডিক্লেয়ার করে থাকে।

কীওয়ার্ড: চলক ধরন

Bool: বুলিয়ান চলক (True, False)

মূদ্রা: মূদ্রা ভেরিয়বল (৪ দশমিক স্থান সহ মূদ্রা মান)

তারিখ: তারিখ চলক

Double: Double-precision floating-point variable (1,79769313486232 x 10E308 - 4,94065645841247 x 10E-324)

ইনটিজার: ইনটিজার চলক (-32768 - 32767)

লং: দীর্ঘ ইনটিজার চলক (-2.147.483.648 - 2.147.483.647)

অবজেক্ট: অবজেক্ট ভেরিয়েবল (নোট: এই ভেরিয়েবলটি শুধুমাত্র সেট দ্বারা ধারাবাহিকভাবে নির্ধারিত হতে পারে!)

Single: Single-precision floating-point variable (3,402823 x 10E38 - 1,401298 x 10E-45).

ষ্ট্রিং: ষ্ট্রিং চলক সর্ব্বোচ ৬৪,০০০ ASCII অক্ষর দ্বারা গঠিত।

[Variant]: ভেরিয়েন্ট ভেরিয়বল ধরন (সকল ধরন বিদ্যমান, বর্ণনা দ্বারা পৃথক)। যদি একটি কীওয়ার্ড উল্লেখিত না থাকে, ভেরিয়েবল স্বয়ংক্রিয়ভাবে ভেরিয়েন্ট ধরন হিসেবে নির্ধারিত হয়, যদি না DefBool থেকে DefVar পর্যন্ত একটি স্টেটমেন্ট ব্যবহৃত হয়।

LibreOffice বেসিকে, আপনার ভেরিয়েবল ডিক্লেয়ার করার প্রয়োজন নেই। যদিও, একটি অ্যারে ব্যবহারের পূর্বে তা ডিক্লেয়ার করতে হবে। আপনি একটি Dim স্টেটমেন্টের মাধ্যমে একটি ভেরিয়েবল ডিক্লেয়ার করতে পারেন, একাধিক ডিক্লেয়ারেশন পৃথক করার জন্য কমা ব্যবহার করতে পারেন। একটি ভেরিয়েবলের ধরন ডিক্লেয়ার করার জন্য, নাম অনুবর্তী এককটি ধরন-ডিক্লেয়ারেশন অক্ষর সন্নিবেশ করান অথবা সংশ্লিষ্ট কীওয়ার্ড ব্যবহার করুন।

LibreOffice বেসিক একটি একক অথবা বহু মাত্রিক অ্যারে সমর্থন করে থাকে যা একটি নির্দিষ্ট ভেরিয়েবলের ধরন দ্বারা নির্দেশিত হয়। যদি একটি প্রোগ্রামে তালিকা অথবা সারণি থাকে তাহলে এতে অ্যারে উপযুক্ত হয় যা আপনি সম্পাদনা করতে চান। অ্যারের সুবিধা হলো, ইনডেক্স অনুসারে পৃথক এলিমেন্ট নির্দেশ করা যায়, যা একটি সংখ্যাসূচক এক্সপ্রেশন অথবা ভেরিয়েবল দ্বারা যথাযথভাবে প্রকাশ করা যায়।

অ্যারেসমূহ Dim স্টেটমেন্টের মাধ্যমে ডিক্লেয়ার করা হয়। ইনডেক্স পরিসর নির্ধারণ করার জন্য দুইটি প্রক্রিয়া রয়েছে:

DIM text(20) as String REM 21 0 থেকে 20 পর্য়ন্ত ক্রমের উপাদান

DIM text(5 to 25) as String REM 21 5 থেকে 25 পর্যন্ত ক্রমের উপাদান

DIM text(-15 to 5) as String REM 21 elements (including 0)

REM numbered from -15 to 5

দ্বিমাত্রিক ডাটা ক্ষেত্র

DIM text(20,2) as String REM 63 elements; form 0 to 20 level 1, from 0 to 20 level 2 and from 0 to 20 level 3.

আপনি ডাইনামিক হিসেবে একটি অ্যারের ধরন ডিক্লেয়ার করতে পারেন, যদি অ্যারে ধারণকারী একটি সাবরুটিন অথবা ফাংশনে বিদ্যমান মাত্রার পরিমাণ ReDim স্টেটমেন্টের মাধ্যমে নির্ধারণ করা হয়। সাধারণত, আপনি শুধুমাত্র একবার একটি অ্যারের মাত্রা নির্ধারণ করতে পারেন এবং তা পরিবর্তন করতে পারেন না। একটি সাবরুটিনের মধ্যে, আপনি ReDim সহ একটি অ্যারে ডিক্লেয়ার করতে পারেন। আপনি শুধুমাত্র সংখ্যাসূচক এক্সপ্রেশন সহ মাত্রা নির্ধারণ করতে পারেন। এটি নিশ্চিত করে যে, ক্ষেত্রসমূহ প্রয়োজন অনুযায়ী বড়।

## উদাহরণ:

    Sub ExampleDim1
    Dim sVar As String
    Dim iVar As Integer
        sVar = "Office"
    End Sub

    Sub ExampleDim2
    দ্বিমাত্রিক ডাটা ক্ষেত্র
    Dim stext(20,2) As String
    Const sDim as String = " Dimension:"
    For i = 0 To 20
        For ii = 0 To 2
            stext(i,ii) = str(i) & sDim & str(ii)
        Next ii
    Next i
    For i = 0 To 20
        For ii = 0 To 2
            MsgBox stext(i,ii)
        Next ii
    Next i
    End Sub