فهرست
یو له خورا عام غلطیو څخه چې موږ په Excel کې د VBA سره د کار کولو پرمهال ورسره مخ یو دا دی چې د کارونکي لخوا ټاکل شوی ډول ندی تعریف شوی. په دې مقاله کې، زه به تاسو ته وښیم چې ولې دا تېروتنه رامنځته شوې او دا تېروتنه څنګه حل کړئ.
د تمرین کاري کتاب ډاونلوډ کړئ
د تمرین کولو لپاره دا د تمرین کاري کتاب ډاونلوډ کړئ دا مقاله لولي.
د کارونکي لخوا ټاکل شوی ډول نه ټاکل شوی.xlsm
2 لاملونه او حلونه د کارونکي تعریف شوي په Excel VBA
کې نه تعریف شوی ډول 2 په Excel VBA کې د دې ډیری وختونه د تېروتنې ترشا لوی مسلې شتون لري. راځئ چې په تفصیل سره یې وپلټو او د حل لارې چارې یې ولټوو.
1. د املا تېروتنه په داسې حال کې چې د تغیراتو اعلان کول
دا د دې تېروتنې لوی لامل دی. ډیری وخت، تېروتنه "د کارونکي لخوا ټاکل شوی ډول نه دی تعریف شوی" د متغیراتو د اعلانولو په وخت کې د املا د غلطۍ له امله رامینځته کیږي.
لاندې کوډونو ته وګورئ.
5819
که تاسو دا کوډ پرمخ وړئ، نو تاسو به د تېروتنې بکس ترلاسه کړئ چې تاسو ته به د تېروتنې د شتون په اړه خبر درکړي "د کارونکي لخوا ټاکل شوی ډول نه دی ټاکل شوی". د دې سره سره، تاسو به د کوډ دویمه کرښه ومومئ چې په نیلي کې روښانه شوي، چیرې چې ما د "strng" په ځای کې لیکلي
0>زه هیله لرم چې تاسو ټکی ترلاسه کړئ. VBA نشي کولی د متغیر ډول پیژني "strng" ، له همدې امله یې دا د نوي متغیر ډول په توګه وګڼله او فکر یې وکړ چې تاسو یې چیرته تعریف کړی دی. مګر کله چې داوموندله چې تاسو دا په هیڅ ځای کې نه دي اعلان کړي، دا یوه تېروتنه راپورته کړه.
له دې امله، د ساده VBA کوډونو چلولو پرمهال، که تاسو په هر ډول د دې تېروتنې سره مخ شئ، لومړی د خپل متغیر ډولونو ټولې املا وګورئ.
2. د مناسبې حوالې نشتوالی
دا د دې تېروتنې یو بل لامل دی. دا د مناسبې حوالې نشتوالی دی. ځینې وختونه موږ په خپلو کوډونو کې ځینې شیان کاروو چې د بصري بنسټیز حوالې بکس څخه مناسب حواله کولو ته اړتیا لري. که نه نو، VBA څیز نه پیژني.
لاندې VBA کوډ وګورئ.
3484
دا کوډ چل کړئ. تاسو به هماغه پخوانۍ تېروتنه ترلاسه کړئ "د کارونکي لخوا ټاکل شوی ډول نه تعریف شوی"، د د لغت څیز روښانه کول. دا ځکه چې VBA نشي کولی د لغت څیز پیژني، او دا د کارونکي لخوا تعریف شوي متغیر په توګه وپیژندل شو، کوم چې په غلطۍ سره ندی تعریف شوی.
اوس لویه پوښتنه دا ده چې دا تېروتنه څنګه حل کړو؟ اسانه. د دې تېروتنې د حل کولو لپاره 2 لارې شتون لري.
⧪ 1 حل: د بصری بکس حوالې بکس څخه د اړتیا وړ حوالې چک کول
دا دی د دې ستونزې د حل لپاره غوره لاره. لاړ شئ اوزار > حوالې په بصری اساسی ربن کې تڼۍ. په References باندې کلیک وکړئ.
د خبرو اترو بکس چې د References نومیږي خلاصیږي. سکرول او ومومئ د مایکروسافټ سکریپټینګ چلولو وخت (دا په هغه شی پورې اړه لري چې تاسو یې کاروئ. د قاموسڅیز اړتیا لري د مایکروسافټ سکریپټینګ چلولو وخت وپیژندل شي. نو، په داسې حال کې چې په VBA کوډ کې یو څیز کاروئ، تاسو باید د دې شرط پوه شئ چې د VBA لخوا وپیژندل شي. د نورو معلوماتو لپاره دا لینک وګورئ.) دا وګورئ.
اوس بیرته راشئ او کوډ چل کړئ. تاسو به کومه تېروتنه ونه کړئ. ځکه چې VBA کولی شي دا ځل د لغت څیز وپیژني.
⧪ 2 حل: دا د یو ځانګړي څیز پرځای د خالص څیز په توګه اعلان کول
د دې ستونزې د حل لپاره بله لاره شتون لري. تاسو کولی شئ اعتراض د خالص څیز په توګه اعلان کړئ، نه د د لغت څیز .
لاندې کوډونو ته پام وکړئ.
7914
<0 دلته ما متغیر MyDictionaryد ساده څیز په توګه اعلان کړ، نه د Dictionary.اوس که تاسو دا کوډ چلوئ، تاسو به کومه تېروتنه ونه کړئ.