உள்ளடக்க அட்டவணை
VBA இல் நகலெடுத்து ஒட்டுதல் உடன் பணிபுரியும் போது நாம் சந்திக்கும் பொதுவான பிரச்சனைகளில் ஒன்று இயக்க நேரப் பிழை 1004 : ரேஞ்ச் வகுப்பின் பேஸ்ட் ஸ்பெஷல் முறை தோல்வியடைந்தது இந்தக் கட்டுரையில், இந்தப் பிழையின் பின்னணியில் உள்ள சாத்தியமான காரணங்கள் என்ன என்பதையும், அவற்றை எவ்வாறு தீர்ப்பது என்பதையும், சரியான எடுத்துக்காட்டுகள் மற்றும் விளக்கப்படங்களுடன் உங்களுக்குக் காண்பிப்பேன்.
பயிற்சிப் புத்தகத்தைப் பதிவிறக்கவும்
இந்தக் கட்டுரையைப் படிக்கும்போது உடற்பயிற்சி செய்ய இந்தப் பயிற்சிப் புத்தகத்தைப் பதிவிறக்கவும்.
பேஸ்ட் ஸ்பெஷல் முறை தோல்வியடைந்தது.xlsm
ரேஞ்ச் வகுப்பின் பேஸ்ட் ஸ்பெஷல் முறை தோல்வி: காரணங்கள் மற்றும் தீர்வுகள்
மேலும் தாமதிக்காமல், நமது முக்கிய விவாதத்திற்கு செல்வோம். அதாவது, இந்தப் பிழையின் பின்னணியில் உள்ள சாத்தியமான காரணங்கள் என்னவாக இருக்கலாம், அவற்றை எவ்வாறு தீர்ப்பது.
காரணம் 1: எதையும் நகலெடுக்காமல் பேஸ்ட் ஸ்பெஷல் முறையை அணுகுதல்
இதுதான் அதிகம் பிழையின் பொதுவான காரணம். அதாவது, எதையும் நகலெடுக்காமல் PasteSpecial முறையை அணுக முயல்கிறது.
தெளிவாகப் புரிந்துகொள்ள, பின்வரும் VBA குறியீட்டைப் பார்க்கவும்.
⧭ VBA குறியீடு:
4574
இங்கே, VBA இன் PasteSpecial முறையைப் பயன்படுத்தியுள்ளோம். எதையும் நகலெடுக்கிறது. எனவே எக்செல் அதை இயக்கும்போது ரன்-டைம் பிழை 1004 காண்பிக்கும்.
⧭ தீர்வு:
இந்தச் சிக்கலைத் தீர்க்க, முதலில், நீங்கள் கலங்களின் வரம்பை நகலெடுக்க வேண்டும், பின்னர் PasteSpecial முறையை அணுக வேண்டும்.
4549
இந்தக் குறியீட்டை இயக்கும்போது, அதுசெயலில் உள்ள ஒர்க் ஷீட்டின் B3:B5 வரம்பின் சூத்திரங்களை தேர்ந்தெடுத்த வரம்பில் ஒட்டவும்.
மேலும் படிக்க: ஒர்க்ஷீட் வகுப்பின் பேஸ்ட் ஸ்பெஷல் முறை தோல்வியடைந்தது (காரணங்கள் & தீர்வுகள்)
காரணம் 2: எழுத்துப்பிழை பிழையுடன் பேஸ்ட் ஸ்பெஷல் முறையை அணுகுதல்
இது மற்றொரு பொதுவான காரணம் பிழை. அதாவது, எந்த ஒரு வாதத்திலும் எழுத்துப்பிழை(கள்) கொண்ட PasteSpecial முறையை அணுக.
பின்வரும் VBA குறியீட்டைப் பார்க்கவும். xlPasteAll என்ற வாதத்தில் எழுத்துப் பிழையை இங்கே செய்துள்ளோம்.
⧭ VBA குறியீடு:
9008
இந்தக் குறியீட்டை இயக்கும்போது, இயக்க நேரப் பிழை 1004 கிடைக்கும்.
⧭ தீர்வு: <3
தீர்வு எளிதானது. நீங்கள் ஏற்கனவே யூகித்திருப்பீர்கள் என்று நான் நம்புகிறேன். அனைத்து வாதங்களின் எழுத்துப்பிழைகளும் சரியாக செய்யப்பட்டுள்ளதா என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள்.
மேலும் பிழை தானாகவே மறைந்துவிடும்.
மேலும் படிக்க: ஒட்டு பயன்படுத்துவது எப்படி Excel இல் சிறப்பு கட்டளை (5 பொருத்தமான வழிகள்)
இதே மாதிரியான அளவீடுகள்
- Excel VBA: வரம்பை மற்றொரு பணிப்புத்தகத்திற்கு நகலெடுக்கவும்
- எக்செல் VBA உடன் அடுத்த வெற்று வரிசையில் மதிப்புகளை நகலெடுத்து ஒட்டவும் (3 எடுத்துக்காட்டுகள்)
- VBA பேஸ்ட் ஸ்பெஷலைப் பயன்படுத்தவும் மற்றும் எக்செல் இல் மூல வடிவமைப்பை வைத்திருங்கள்
- எக்செல் (4 முறைகள்) இல் பல கலங்களில் ஒரே மதிப்பை நகலெடுப்பது எப்படி
- எக்செல் VBA அளவுகோல்களின் அடிப்படையில் வரிசைகளை மற்றொரு பணித்தாளில் நகலெடுக்க
காரணம் 3: புதியதைத் திறப்பதுநகலெடுத்த பிறகு பணிப்புத்தகம் நகல்/ஒட்டு பயன்முறையை ரத்து செய்கிறது
இது பிழையின் மற்றொரு முக்கிய காரணம். அதாவது, ஒட்டுவதற்கு முன் காப்பி/பேஸ்ட் பயன்முறையை ரத்து செய்யும் ஒன்றைச் செய்வது.
தெளிவாகப் புரிந்துகொள்ள பின்வரும் குறியீட்டைப் பாருங்கள்.
⧭ VBA குறியீடு:
7206
இங்கே பணிப்புத்தகம்1 எனப்படும் பணிப்புத்தகத்தின் தாள்1 இலிருந்து B3:B5 வரம்பை நகலெடுத்துள்ளோம்.
பின்னர் அதே கோப்புறையில் Workbook2 என்ற புதிய பணிப்புத்தகத்தை உருவாக்கி, நகலெடுத்த வரம்பை Sheet1< B3:B5 வரம்பில் ஒட்ட முயற்சித்தோம். அந்தப் பணிப்புத்தகத்தின் 2>.
ஆனால், குறியீட்டை இயக்கும் போது, அது பேஸ்ட் ஸ்பெஷல் மெத்தட் ஆஃப் ரேஞ்ச் கிளாஸ் தோல்வி பிழை, ஏனெனில் புதிய ஒர்க்புக்கை உருவாக்கும் தருணத்தில், நகலெடு/ஒட்டு முறை ரத்துசெய்யப்படும்.
⧭ தீர்வு:
இந்தச் சிக்கலைத் தீர்க்க, முதலில் எழுதவும் வொர்க்புக்2 எனப்படும் புதிய பணிப்புத்தகத்தை உருவாக்க, குறியீட்டின் வரிகளை கீழே இறக்கவும்.
பின்னர் ஒர்க்புக்1 ஐ செயல்படுத்த கோடுகளைச் செருகவும், அதிலிருந்து விரும்பிய வரம்பை நகலெடுக்கவும்.
0>இறுதியாக, Workbook2 ஐச் செயல்படுத்தி, நகலெடுத்த வரம்பை அங்கு ஒட்டவும்.5501
இந்தக் குறியீட்டை இயக்கவும். இது பணிப்புத்தகம்1 இன் தாள்1 இலிருந்து B3:B5 வரம்பை நகலெடுக்கும்.
அதை ஒட்டவும் பணிப்புத்தகம்2 எனப்படும் புதிதாக உருவாக்கப்பட்ட பணிப்புத்தகத்தின் தாள்1 இல்.
⧭ முன்னெச்சரிக்கை:
வெளிப்படையாக, ஒர்க்புக்1 ஐ இயக்கும் போது திறந்து வைக்க மறக்காதீர்கள்குறியீடு.
மேலும் படிக்க: மேக்ரோஸ் இல்லாமல் எக்செல் இல் நகலெடுத்து ஒட்டுவதை எப்படி முடக்குவது (2 அளவுகோல்களுடன்)
காரணம் 4: Application.CutCopyMode ஐ False ஆக மாற்றுகிறது, அது நகல்/ஒட்டு பயன்முறையை ரத்து செய்கிறது
இறுதியாக, பிழை ஏற்படுவதற்கு மற்றொரு காரணம் இருக்கலாம். PasteSpecial முறையை அணுகுவதற்கு முன், தவறுதலாக Application.CutCopyMode ஐ முடக்கலாம்.
இது மிகவும் பொதுவான நடைமுறை இல்லையென்றாலும், சில சமயங்களில் நாம் செய்ய வேண்டிய நேரத்தில் அதைச் செய்கிறோம். நீண்ட எண்ணிக்கையிலான வரிகளுடன் வேலை செய்யுங்கள்.
தெளிவாகப் புரிந்துகொள்ள பின்வரும் குறியீட்டைப் பார்க்கவும். இங்கே B3:B5 வரம்பை நகலெடுத்துள்ளோம், ஆனால் அதை ஒட்டுவதற்கு முன் CutCopyMode ஐ ரத்து செய்துள்ளோம்.
⧭ VBA குறியீடு:
2877
நீங்கள் குறியீட்டை இயக்கும் போது, பேஸ்ட் ஸ்பெஷல் மெத்தட் ஆஃப் ரேஞ்ச் கிளாஸ் தோல்வி பிழையைக் காண்பிக்கும்.
3>
⧭ தீர்வு:
இப்போது நீங்கள் அனைவரும் தீர்வை யூகித்திருப்பீர்கள் என்று நினைக்கிறேன். இது உண்மையில் மிகவும் எளிமையானது. CutCopy பயன்முறையை முடக்கும் குறியீட்டிலிருந்து வரியை அகற்றவும்.
எனவே, சரியான VBA குறியீடு:
1994
<24
இது B3:B5 வரம்பை நகலெடுத்து, D3:D5 இல் எந்த பிரச்சனையும் இல்லாமல் ஒட்டும்.
மேலும் படிக்க 5>
VBA இல் PasteSpecial முறையுடன் பணிபுரியும் போது நீங்கள் சந்திக்கும் பிரச்சனைகளை மட்டும் இங்கு காண்பித்துள்ளேன். நீங்கள் இருந்தால் PasteSpecial முறையை விரிவாக அறிய விரும்பினால், இந்த இணைப்பைப் பார்வையிடவும்.
முடிவு
எனவே, சுருக்கமாக, இவை உங்கள் குறியீட்டில் ரன்-டைம் பிழை 1004: பேஸ்ட் ஸ்பெஷல் முறை மற்றும் வரம்பு வகுப்பு தோல்வியடைந்தது காரணங்கள். நீங்கள் அனைத்து புள்ளிகளையும் தெளிவாக புரிந்து கொண்டீர்கள், எதிர்காலத்தில் அவை உங்களுக்கு நிறைய உதவும் என்று நம்புகிறேன். வேறு ஏதேனும் காரணங்கள் தெரியுமா? மேலும் உங்களுக்கு ஏதேனும் பிரச்சனைகள் உள்ளதா? தயங்காமல் எங்களிடம் கேளுங்கள். மேலும் இடுகைகள் மற்றும் புதுப்பிப்புகளுக்கு எங்கள் தளத்தை ExcelWIKI பார்வையிட மறக்காதீர்கள்.