VBA ਡਿਕਸ਼ਨਰੀਆਂ ਦਾ ਨਿਪਟਾਰਾ ਕਰਨਾ: ਮਾਪਦੰਡਾਂ ਨਾਲ ਗਿਣਤੀ ਕਰਨਾ ਸਰਲ ਬਣਾਇਆ ਗਿਆ ਹੈ
ਐਕਸਲ ਵਿੱਚ ਵੱਡੇ ਡੇਟਾਸੈਟਾਂ ਨਾਲ ਕੰਮ ਕਰਨਾ ਔਖਾ ਹੋ ਸਕਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ ਜਦੋਂ ਕਈ ਕਾਲਮਾਂ ਵਿੱਚ ਖਾਸ ਮਾਪਦੰਡ ਪੂਰੇ ਕੀਤੇ ਜਾਣੇ ਚਾਹੀਦੇ ਹਨ। ਕਲਪਨਾ ਕਰੋ ਕਿ ਤੁਹਾਡੇ ਕੋਲ ਹਜ਼ਾਰਾਂ ਕਤਾਰਾਂ ਹਨ ਅਤੇ ਡੁਪਲੀਕੇਟ ਤੋਂ ਬਚਦੇ ਹੋਏ ਉਹਨਾਂ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਫਿਲਟਰ ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਇਹ ਚੁਣੌਤੀ ਉਹ ਥਾਂ ਹੈ ਜਿੱਥੇ VBA ਦਾ ਡਿਕਸ਼ਨਰੀ ਆਬਜੈਕਟ ਚਮਕਦਾ ਹੈ, ਵਿਲੱਖਣ ਮੁੱਲਾਂ ਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਸਟੋਰ ਕਰਨ ਅਤੇ ਗਿਣਨ ਦਾ ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ਤਰੀਕਾ ਪੇਸ਼ ਕਰਦਾ ਹੈ। 🚀
ਹਾਲਾਂਕਿ, ਚੀਜ਼ਾਂ ਹਮੇਸ਼ਾ ਸੁਚਾਰੂ ਢੰਗ ਨਾਲ ਨਹੀਂ ਚਲਦੀਆਂ। ਤੁਹਾਨੂੰ ਪਤਾ ਲੱਗ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਡੀ VBA ਡਿਕਸ਼ਨਰੀ ਸਹੀ ਢੰਗ ਨਾਲ ਨਹੀਂ ਭਰ ਰਹੀ ਹੈ, ਖਾਲੀ ਨਤੀਜੇ ਵਾਪਸ ਨਹੀਂ ਕਰ ਰਹੀ ਹੈ, ਜਾਂ ਉਮੀਦ ਅਨੁਸਾਰ ਕੰਮ ਨਹੀਂ ਕਰ ਰਹੀ ਹੈ। ਜੇ ਇਹ ਜਾਣੂ ਲੱਗਦਾ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਇਕੱਲੇ ਨਹੀਂ ਹੋ! ਬਹੁਤ ਸਾਰੇ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਡਾਟਾ-ਭਾਰੀ ਕਾਰਜਾਂ 'ਤੇ ਕੰਮ ਕਰਦੇ ਸਮੇਂ ਅਜਿਹੀਆਂ ਸਮੱਸਿਆਵਾਂ ਦਾ ਸਾਹਮਣਾ ਕਰਨਾ ਪੈਂਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਗੁੰਝਲਦਾਰ ਤਰਕ ਅਤੇ ਸਥਿਤੀਆਂ ਸ਼ਾਮਲ ਹੁੰਦੀਆਂ ਹਨ।
ਇੱਕ ਦ੍ਰਿਸ਼ ਵਿੱਚ, ਇੱਕ ਉਪਭੋਗਤਾ ਨੇ ਚਾਰ ਕਾਲਮਾਂ ਵਿੱਚ ਤਿੰਨ ਮਾਪਦੰਡਾਂ ਦੇ ਅਧਾਰ ਤੇ ਵਿਲੱਖਣ ਮੈਚ ਲੱਭਣ ਲਈ VBA ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ। ਉਹਨਾਂ ਦੇ ਯਤਨਾਂ ਦੇ ਬਾਵਜੂਦ, ਸ਼ਬਦਕੋਸ਼ ਨੇ ਲਗਾਤਾਰ ਕੁਝ ਵੀ ਵਾਪਸ ਨਹੀਂ ਕੀਤਾ, ਭਾਵੇਂ ਕਈ ਮੈਚ ਹੋਣੇ ਚਾਹੀਦੇ ਸਨ। ਇਸ ਕਿਸਮ ਦੀ ਸਮੱਸਿਆ ਨਿਰਾਸ਼ਾਜਨਕ ਮਹਿਸੂਸ ਕਰ ਸਕਦੀ ਹੈ, ਖਾਸ ਤੌਰ 'ਤੇ ਜਦੋਂ ਉੱਚ ਉਮੀਦਾਂ ਨਾਲ ਨਜਿੱਠਣ ਅਤੇ ਸਮਾਂ ਸੀਮਾ ਦਬਾਉਣ ਵੇਲੇ. 😅
ਇਸ ਲੇਖ ਵਿਚ, ਅਸੀਂ ਇਸ ਸਮੱਸਿਆ ਨੂੰ ਕਦਮ-ਦਰ-ਕਦਮ ਵਿਗਾੜਾਂਗੇ. ਸੰਭਾਵਿਤ ਕਮੀਆਂ ਦੀ ਪੜਚੋਲ ਕਰਕੇ ਅਤੇ ਵਿਹਾਰਕ ਹੱਲਾਂ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਕੇ, ਤੁਸੀਂ ਸਪਸ਼ਟਤਾ ਪ੍ਰਾਪਤ ਕਰੋਗੇ ਕਿ ਕਿਵੇਂ VBA ਡਿਕਸ਼ਨਰੀਆਂ ਨੂੰ ਤੁਹਾਡੇ ਡੇਟਾ ਲਈ ਨਿਰਵਿਘਨ ਕੰਮ ਕਰਨਾ ਹੈ। ਕੁਝ ਸੁਧਾਰਾਂ ਦੇ ਨਾਲ, ਤੁਸੀਂ ਜਲਦੀ ਹੀ ਸਹੀ ਨਤੀਜੇ ਦੇਖੋਗੇ — ਅਤੇ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਸਮਾਂ ਬਚਾਓਗੇ। ਆਓ ਅੰਦਰ ਡੁਬਕੀ ਕਰੀਏ!
ਹੁਕਮ | ਵਰਤੋਂ ਦੀ ਉਦਾਹਰਨ |
---|---|
CreateObject | ਇੱਕ ਨਿਸ਼ਚਿਤ ਵਸਤੂ ਦੀ ਇੱਕ ਉਦਾਹਰਨ ਸ਼ੁਰੂ ਕਰਦਾ ਹੈ। ਉਦਾਹਰਨ ਵਿੱਚ, ਇਸਦੀ ਵਰਤੋਂ ਵਿਲੱਖਣ ਮੁੱਲਾਂ ਅਤੇ ਗਿਣਤੀਆਂ ਨੂੰ ਗਤੀਸ਼ੀਲ ਰੂਪ ਵਿੱਚ ਸੰਭਾਲਣ ਲਈ ਇੱਕ Scripting.Dictionary ਵਸਤੂ ਬਣਾਉਣ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। |
Scripting.Dictionary | ਕੁੰਜੀ-ਮੁੱਲ ਦੇ ਜੋੜਿਆਂ ਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਸਟੋਰ ਕਰਨ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਵਸਤੂ। ਸਕ੍ਰਿਪਟ ਵਿੱਚ, ਇਹ ਡੇਟਾਸੇਟ ਤੋਂ ਕੱਢੀਆਂ ਗਈਆਂ ਵਿਲੱਖਣ ਕੁੰਜੀਆਂ ਲਈ ਇੱਕ ਕੰਟੇਨਰ ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। |
Exists | ਜਾਂਚ ਕਰਦਾ ਹੈ ਕਿ ਕੀ ਡਿਕਸ਼ਨਰੀ ਵਿੱਚ ਕੋਈ ਖਾਸ ਕੁੰਜੀ ਮੌਜੂਦ ਹੈ। ਇਹ ਦੁਹਰਾਅ ਦੌਰਾਨ ਨਵੀਆਂ ਕੁੰਜੀਆਂ ਜੋੜਨ ਵੇਲੇ ਡੁਪਲੀਕੇਟ ਐਂਟਰੀਆਂ ਨੂੰ ਰੋਕਦਾ ਹੈ। |
Add | ਸ਼ਬਦਕੋਸ਼ ਵਿੱਚ ਇੱਕ ਨਵਾਂ ਕੁੰਜੀ-ਮੁੱਲ ਜੋੜਦਾ ਹੈ। ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ ਸਿਰਫ਼ ਮਾਪਦੰਡਾਂ ਨਾਲ ਮੇਲ ਖਾਂਦੀਆਂ ਵਿਲੱਖਣ ਚੀਜ਼ਾਂ ਸਟੋਰ ਕੀਤੀਆਂ ਜਾਣ। |
Cells | ਇੱਕ ਰੇਂਜ ਦੇ ਅੰਦਰ ਇੱਕ ਖਾਸ ਸੈੱਲ ਤੱਕ ਪਹੁੰਚ ਕਰਦਾ ਹੈ। ਇਸਦੀ ਵਰਤੋਂ ਇੱਥੇ ਦੁਹਰਾਅ ਦੌਰਾਨ ਸੰਬੰਧਿਤ ਕਾਲਮਾਂ ਤੋਂ ਗਤੀਸ਼ੀਲ ਤੌਰ 'ਤੇ ਮੁੱਲ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। |
Rows.Count | ਕਿਸੇ ਦਿੱਤੀ ਗਈ ਰੇਂਜ ਵਿੱਚ ਕਤਾਰਾਂ ਦੀ ਕੁੱਲ ਸੰਖਿਆ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ, ਜਿਸਦੀ ਵਰਤੋਂ ਦੁਹਰਾਓ ਲੂਪ ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। |
Debug.Print | ਡੀਬੱਗਿੰਗ ਦੌਰਾਨ ਤੁਰੰਤ ਵਿੰਡੋ ਵਿੱਚ ਜਾਣਕਾਰੀ ਆਉਟਪੁੱਟ ਕਰਦਾ ਹੈ। ਸਕ੍ਰਿਪਟ ਵਿੱਚ, ਇਹ ਫੰਕਸ਼ਨ ਨਤੀਜਿਆਂ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਅਤੇ ਗਲਤੀਆਂ ਨੂੰ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਢੰਗ ਨਾਲ ਸੰਭਾਲਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ। |
On Error GoTo | ਇੱਕ ਗਲਤੀ-ਪ੍ਰਬੰਧਨ ਰੁਟੀਨ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ। ਵਿਸਤ੍ਰਿਤ ਫੰਕਸ਼ਨ ਵਿੱਚ, ਇਹ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਨੂੰ ਗਲਤੀ ਹੈਂਡਲਰ ਨੂੰ ਰੀਡਾਇਰੈਕਟ ਕਰਦਾ ਹੈ ਜੇਕਰ ਕੋਈ ਅਣਕਿਆਸੀ ਗਲਤੀ ਹੁੰਦੀ ਹੈ। |
Dim | ਵੇਰੀਏਬਲਾਂ ਨੂੰ ਸਪੱਸ਼ਟ ਤੌਰ 'ਤੇ ਘੋਸ਼ਿਤ ਕਰਦਾ ਹੈ, ਸਹੀ ਮੈਮੋਰੀ ਵੰਡ ਅਤੇ ਪੜ੍ਹਨਯੋਗਤਾ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ। ਹਰੇਕ ਮੁੱਖ ਤੱਤ ਜਿਵੇਂ ਕਿ ਸ਼ਬਦਕੋਸ਼, ਕਾਊਂਟਰ ਅਤੇ ਰੇਂਜ ਸਪਸ਼ਟਤਾ ਲਈ ਘੋਸ਼ਿਤ ਕੀਤੇ ਗਏ ਹਨ। |
Range | ਵਰਕਸ਼ੀਟ ਵਿੱਚ ਸੈੱਲ ਜਾਂ ਸੈੱਲਾਂ ਦੀ ਰੇਂਜ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ। ਫਿਲਟਰਿੰਗ ਅਤੇ ਪ੍ਰੋਸੈਸਿੰਗ ਲਈ ਫੰਕਸ਼ਨ ਵਿੱਚ ਕਾਲਮ ਡੇਟਾ ਨੂੰ ਪਾਸ ਕਰਨ ਲਈ ਵਿਆਪਕ ਤੌਰ 'ਤੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। |
ਪ੍ਰੈਕਟੀਕਲ ਇਨਸਾਈਟਸ ਦੇ ਨਾਲ VBA ਡਿਕਸ਼ਨਰੀ ਮੁੱਦੇ ਨੂੰ ਅਸਪਸ਼ਟ ਕਰਨਾ
ਇਸਦੇ ਮੂਲ ਵਿੱਚ, ਪ੍ਰਦਾਨ ਕੀਤੀ ਗਈ VBA ਸਕ੍ਰਿਪਟ ਇੱਕ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ ਸ਼ਬਦਕੋਸ਼ ਵਸਤੂ ਮਲਟੀਪਲ ਕਾਲਮਾਂ ਵਿੱਚ ਡੇਟਾ ਨੂੰ ਫਿਲਟਰ ਕਰਨ ਵੇਲੇ ਵਿਲੱਖਣ ਐਂਟਰੀਆਂ ਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਪ੍ਰਬੰਧਿਤ ਕਰਨ ਲਈ। ਫੰਕਸ਼ਨ, ਨਾਮ ਸੂਚੀ ਦੀ ਲੰਬਾਈ, ਚਾਰ ਰੇਂਜਾਂ ਅਤੇ ਤਿੰਨ ਫਿਲਟਰਿੰਗ ਮਾਪਦੰਡਾਂ ਨੂੰ ਇਨਪੁਟ ਵਜੋਂ ਲੈਂਦਾ ਹੈ। ਇਨਪੁਟ ਰੇਂਜਾਂ ਦੀ ਹਰੇਕ ਕਤਾਰ ਨੂੰ ਦੁਹਰਾਉਣ ਦੁਆਰਾ, ਇਹ ਉਹਨਾਂ ਕਤਾਰਾਂ ਦੀ ਪਛਾਣ ਕਰਦਾ ਹੈ ਜਿੱਥੇ ਸਾਰੇ ਮਾਪਦੰਡ ਪੂਰੇ ਹੁੰਦੇ ਹਨ ਅਤੇ ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਸ਼ਬਦਕੋਸ਼ ਵਿੱਚ ਕੋਈ ਡੁਪਲੀਕੇਟ ਸ਼ਾਮਲ ਨਹੀਂ ਕੀਤੇ ਗਏ ਹਨ। ਇਹ ਪਹੁੰਚ ਵਿਸ਼ੇਸ਼ ਤੌਰ 'ਤੇ ਵੱਡੇ ਡੇਟਾਸੈਟਾਂ ਵਾਲੇ ਐਕਸਲ ਦ੍ਰਿਸ਼ਾਂ ਵਿੱਚ ਉਪਯੋਗੀ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਗੁੰਝਲਦਾਰ ਲੂਪਸ ਜਾਂ ਅਸਥਾਈ ਸਟੋਰੇਜ ਐਰੇ ਦੀ ਜ਼ਰੂਰਤ ਨੂੰ ਖਤਮ ਕਰਦਾ ਹੈ।
ਕੁੰਜੀ ਹੁਕਮ ਆਬਜੈਕਟ ਬਣਾਓ ਸ਼ਬਦਕੋਸ਼ ਨੂੰ ਸ਼ੁਰੂ ਕਰਦਾ ਹੈ, ਕੁੰਜੀ-ਮੁੱਲ ਜੋੜਿਆਂ ਦੇ ਪ੍ਰਬੰਧਨ ਲਈ ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ਸੰਦ। ਇਹ ਆਬਜੈਕਟ ਕੇਂਦਰੀ ਹੈ ਕਿ ਫੰਕਸ਼ਨ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ ਕਿਉਂਕਿ ਇਹ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਕੁੰਜੀ ਦੀ ਮੌਜੂਦਗੀ ਦੀ ਜਾਂਚ ਕਰ ਸਕਦਾ ਹੈ ਮੌਜੂਦ ਹੈ ਢੰਗ. ਜੇਕਰ ਕੋਈ ਕੁੰਜੀ ਮੌਜੂਦ ਨਹੀਂ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ, ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦੇ ਹੋਏ ਕਿ ਸਿਰਫ਼ ਵਿਲੱਖਣ ਆਈਟਮਾਂ ਹੀ ਸਟੋਰ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ। ਇਸਦਾ ਇੱਕ ਜੀਵਨ ਉਦਾਹਰਨ ਇੱਕ ਵਸਤੂ ਸੂਚੀ ਵਿੱਚ ਉਤਪਾਦ ਕੋਡਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨਾ ਹੋ ਸਕਦਾ ਹੈ ਜਿੱਥੇ ਤੁਹਾਨੂੰ ਡੁਪਲੀਕੇਟ ਨੂੰ ਛੱਡ ਕੇ ਕਿਸੇ ਖਾਸ ਵਿਭਾਗ ਵਿੱਚ ਆਈਟਮਾਂ ਦੀ ਗਿਣਤੀ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਇਸ ਕਾਰਜਕੁਸ਼ਲਤਾ ਤੋਂ ਬਿਨਾਂ, ਆਈਟਮਾਂ ਦੀ ਇੱਕ ਵਿਲੱਖਣ ਸੂਚੀ ਨੂੰ ਕਾਇਮ ਰੱਖਣਾ ਔਖਾ ਅਤੇ ਗਲਤੀ-ਪ੍ਰਵਾਨ ਹੋਵੇਗਾ। 🎯
ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਲੂਪ ਨੂੰ ਇੱਕੋ ਸਮੇਂ ਪ੍ਰਦਾਨ ਕੀਤੀਆਂ ਰੇਂਜਾਂ ਦੀਆਂ ਕਤਾਰਾਂ ਰਾਹੀਂ ਦੁਹਰਾਉਣ ਲਈ ਢਾਂਚਾ ਬਣਾਇਆ ਗਿਆ ਹੈ। ਇਹ ਕਾਲਮਾਂ ਵਿੱਚ ਡੇਟਾ ਦੀ ਇਕਸਾਰਤਾ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ, ਜੋ ਕਤਾਰਾਂ ਨੂੰ ਫਿਲਟਰ ਕਰਨ ਵੇਲੇ ਮਹੱਤਵਪੂਰਨ ਹੁੰਦਾ ਹੈ ਜਿੱਥੇ ਮਾਪਦੰਡ ਇੱਕੋ ਲਾਈਨ 'ਤੇ ਮੇਲ ਕੀਤੇ ਜਾਣੇ ਚਾਹੀਦੇ ਹਨ। ਉਦਾਹਰਨ ਲਈ, ਇੱਕ ਕਾਰੋਬਾਰੀ ਰਿਪੋਰਟ ਵਿੱਚ, ਤੁਹਾਨੂੰ "DRY" ਵਿਭਾਗ ਵਿੱਚ "PK-1" ਵਜੋਂ ਚਿੰਨ੍ਹਿਤ ਸਾਰੇ ਉਤਪਾਦ ਲੱਭਣ ਦੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ ਜਿਸ ਵਿੱਚ UPC ਕੋਡ ਵੀ ਹੈ। ਸਕ੍ਰਿਪਟ ਅਜਿਹੇ ਕਾਰਜਾਂ ਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਸੰਭਾਲਦੀ ਹੈ, ਇੱਕ ਵਾਰ ਵਿੱਚ ਹਜ਼ਾਰਾਂ ਕਤਾਰਾਂ ਨੂੰ ਪ੍ਰੋਸੈਸ ਕਰਦੀ ਹੈ। ਇਹ ਉਸ ਚੀਜ਼ ਨੂੰ ਸਰਲ ਬਣਾਉਂਦਾ ਹੈ ਜਿਸ ਲਈ ਐਕਸਲ ਵਿੱਚ IF ਸ਼ਰਤਾਂ ਦੀ ਇੱਕ ਗੁੰਝਲਦਾਰ ਲੜੀ ਦੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ। 🛠️
ਅੰਤ ਵਿੱਚ, ਸਕ੍ਰਿਪਟ ਦੀ ਮਾਡਯੂਲਰ ਪ੍ਰਕਿਰਤੀ ਇਸਨੂੰ ਸਾਰੇ ਪ੍ਰੋਜੈਕਟਾਂ ਵਿੱਚ ਮੁੜ ਵਰਤੋਂ ਯੋਗ ਬਣਾਉਂਦੀ ਹੈ। ਤਰਕ ਨੂੰ ਇੱਕ ਸਿੰਗਲ ਫੰਕਸ਼ਨ ਵਿੱਚ ਅਲੱਗ ਕਰਕੇ, ਇਸਨੂੰ ਬਿਨਾਂ ਕਿਸੇ ਸੋਧ ਦੇ ਵੱਖ-ਵੱਖ ਡੇਟਾਸੈਟਾਂ ਜਾਂ ਮਾਪਦੰਡਾਂ 'ਤੇ ਲਾਗੂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ ਇੱਕ ਸ਼ਾਨਦਾਰ ਉਦਾਹਰਨ ਹੈ ਕਿ ਕਿਵੇਂ ਢਾਂਚਾਗਤ VBA ਕੋਡ ਉਤਪਾਦਕਤਾ ਨੂੰ ਵਧਾਉਂਦਾ ਹੈ। ਵਰਗੇ ਹੁਕਮ ਡੀਬੱਗ.ਪ੍ਰਿੰਟ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਦੌਰਾਨ ਸੂਝ ਪ੍ਰਦਾਨ ਕਰਕੇ ਹੋਰ ਮਦਦ, ਤਰੁੱਟੀਆਂ ਦੀ ਪਛਾਣ ਕਰਨਾ ਅਤੇ ਹੱਲ ਕਰਨਾ ਆਸਾਨ ਬਣਾਉਂਦਾ ਹੈ। ਅਭਿਆਸ ਵਿੱਚ, ਇਹ VBA ਤੋਂ ਅਣਜਾਣ ਟੀਮ ਦੇ ਮੈਂਬਰ ਲਈ ਅਨਮੋਲ ਹੋ ਸਕਦਾ ਹੈ, ਕਿਉਂਕਿ ਉਹ ਤੁਰੰਤ ਫੀਡਬੈਕ ਰਾਹੀਂ ਮੁੱਦਿਆਂ ਨੂੰ ਸਮਝ ਸਕਦੇ ਹਨ ਅਤੇ ਸਮੱਸਿਆ ਦਾ ਨਿਪਟਾਰਾ ਕਰ ਸਕਦੇ ਹਨ। ਇਹਨਾਂ ਸਾਧਨਾਂ ਅਤੇ ਤਕਨੀਕਾਂ ਦੇ ਨਾਲ, ਚੁਣੌਤੀਪੂਰਨ ਡੇਟਾ ਸਮੱਸਿਆਵਾਂ ਵੀ ਪ੍ਰਬੰਧਨਯੋਗ ਬਣ ਜਾਂਦੀਆਂ ਹਨ, ਅਤੇ ਸਕ੍ਰਿਪਟ ਰੋਜ਼ਾਨਾ ਐਕਸਲ ਕੰਮਾਂ ਲਈ ਇੱਕ ਮਜ਼ਬੂਤ ਹੱਲ ਵਿੱਚ ਵਿਕਸਤ ਹੁੰਦੀ ਹੈ।
ਸਟੀਕ ਫਿਲਟਰਿੰਗ ਲਈ VBA ਡਿਕਸ਼ਨਰੀ ਮੁੱਦੇ ਨੂੰ ਸਮਝਣਾ ਅਤੇ ਹੱਲ ਕਰਨਾ
ਇਹ ਪਹੁੰਚ ਕਈ ਮਾਪਦੰਡਾਂ ਦੇ ਆਧਾਰ 'ਤੇ ਸ਼ਬਦਕੋਸ਼ਾਂ ਨੂੰ ਸੰਭਾਲਣ ਅਤੇ ਕਤਾਰਾਂ ਨੂੰ ਫਿਲਟਰ ਕਰਨ ਲਈ ਇੱਕ ਮਾਡਿਊਲਰ VBA ਹੱਲ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ।
' Define the ListLength function to filter rows and count unique items based on criteria.
Function ListLength(Range1 As Range, Range2 As Range, Range3 As Range, Range4 As Range, _
Filter1 As String, Filter2 As String, Filter3 As String) As Long
Dim i As Long
Dim itemList As Object
Set itemList = CreateObject("Scripting.Dictionary") ' Initialize dictionary object
' Iterate through all rows in the range
For i = 1 To Range1.Rows.Count
If Range2.Cells(i, 1).Value = Filter1 Then
If Range3.Cells(i, 1).Value = Filter2 Then
If Range4.Cells(i, 1).Value = Filter3 Then
Dim key As String
key = Range1.Cells(i, 1).Value
If Not itemList.Exists(key) Then
itemList.Add key, 0
End If
End If
End If
End If
Next i
ListLength = itemList.Count
End Function
ਡਿਕਸ਼ਨਰੀਆਂ ਦੇ ਨਾਲ ਇੱਕ ਅਨੁਕੂਲਿਤ ਪਹੁੰਚ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ VBA ਫਿਲਟਰਿੰਗ ਨੂੰ ਹੱਲ ਕਰਨਾ
ਇਹ ਵਿਕਲਪ ਬਿਹਤਰ ਕਾਰਗੁਜ਼ਾਰੀ ਅਤੇ ਸਪਸ਼ਟਤਾ ਲਈ ਬਿਹਤਰ ਤਰੁੱਟੀ ਪ੍ਰਬੰਧਨ ਅਤੇ ਸਪਸ਼ਟ ਜਾਂਚਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ।
' Enhanced function for filtering and counting unique items using error handling.
Function OptimizedListLength(Range1 As Range, Range2 As Range, Range3 As Range, Range4 As Range, _
Filter1 As String, Filter2 As String, Filter3 As String) As Long
On Error GoTo ErrorHandler
Dim dict As Object
Dim i As Long
Set dict = CreateObject("Scripting.Dictionary")
' Loop through ranges with detailed checks
For i = 1 To Range1.Rows.Count
If Not IsEmpty(Range1.Cells(i, 1).Value) Then
If Range2.Cells(i, 1).Value = Filter1 And _
Range3.Cells(i, 1).Value = Filter2 And _
Range4.Cells(i, 1).Value = Filter3 Then
Dim uniqueKey As String
uniqueKey = Range1.Cells(i, 1).Value
If Not dict.Exists(uniqueKey) Then
dict.Add uniqueKey, True
End If
End If
End If
Next i
OptimizedListLength = dict.Count
Exit Function
ErrorHandler:
Debug.Print "An error occurred: " & Err.Description
OptimizedListLength = -1
End Function
ਵਿਆਪਕ ਯੂਨਿਟ ਟੈਸਟਾਂ ਦੇ ਨਾਲ VBA ਫਿਲਟਰਿੰਗ ਦੀ ਜਾਂਚ ਕਰਨਾ
VBA ਫੰਕਸ਼ਨਾਂ ਲਈ ਯੂਨਿਟ ਟੈਸਟਿੰਗ ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ ਉਹ ਵੱਖ-ਵੱਖ ਮਾਮਲਿਆਂ ਨੂੰ ਸਹੀ ਅਤੇ ਕੁਸ਼ਲਤਾ ਨਾਲ ਸੰਭਾਲਦੇ ਹਨ।
Sub TestListLength()
Dim result As Long
' Set up mock ranges and criteria
Dim col1 As Range, col2 As Range, col3 As Range, col4 As Range
Set col1 = Worksheets("TestSheet").Range("A2:A10")
Set col2 = Worksheets("TestSheet").Range("B2:B10")
Set col3 = Worksheets("TestSheet").Range("C2:C10")
Set col4 = Worksheets("TestSheet").Range("D2:D10")
' Call the function
result = ListLength(col1, col2, col3, col4, "PK-1", "DRY", "Yes")
' Check result and output
If result > 0 Then
Debug.Print "Test passed with " & result & " matches."
Else
Debug.Print "Test failed: No matches found."
End If
End Sub
ਡੇਟਾ ਪ੍ਰੋਸੈਸਿੰਗ ਲਈ ਐਡਵਾਂਸਡ VBA ਤਕਨੀਕਾਂ ਦਾ ਪਰਦਾਫਾਸ਼ ਕਰਨਾ
ਐਕਸਲ VBA ਨਾਲ ਕੰਮ ਕਰਦੇ ਸਮੇਂ, ਕਈ ਮਾਪਦੰਡਾਂ ਵਾਲੇ ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਅਕਸਰ ਤਕਨੀਕੀ ਤਕਨੀਕਾਂ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਏ ਸ਼ਬਦਕੋਸ਼ ਆਬਜੈਕਟ ਇੱਕ ਅਜਿਹਾ ਸਾਧਨ ਹੈ ਜੋ ਵਿਲੱਖਣ ਮੁੱਲਾਂ ਨੂੰ ਫਿਲਟਰ ਕਰਨ, ਗਿਣਤੀ ਕਰਨ ਅਤੇ ਪ੍ਰਬੰਧਨ ਵਰਗੇ ਕੰਮਾਂ ਲਈ ਇੱਕ ਸਾਫ਼ ਅਤੇ ਕੁਸ਼ਲ ਹੱਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਪਰੰਪਰਾਗਤ ਐਰੇ ਦੇ ਉਲਟ, ਸ਼ਬਦਕੋਸ਼ ਤੁਹਾਨੂੰ ਗਤੀਸ਼ੀਲ ਤੌਰ 'ਤੇ ਵਿਲੱਖਣ ਕੁੰਜੀਆਂ ਨੂੰ ਜੋੜਨ ਅਤੇ ਉਹਨਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੇ ਹਨ, ਉਹਨਾਂ ਨੂੰ ਡੁਪਲੀਕੇਟ ਜਾਂ ਮਲਟੀ-ਕਾਲਮ ਫਿਲਟਰਿੰਗ ਵਾਲੇ ਦ੍ਰਿਸ਼ਾਂ ਲਈ ਸੰਪੂਰਨ ਬਣਾਉਂਦੇ ਹਨ। ਇਹ ਸਕ੍ਰਿਪਟ ਇਹਨਾਂ ਆਮ ਐਕਸਲ ਚੁਣੌਤੀਆਂ ਨੂੰ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਢੰਗ ਨਾਲ ਨਜਿੱਠਣ ਲਈ ਡਿਕਸ਼ਨਰੀ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ। 🚀
ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਪਰ ਅਕਸਰ ਨਜ਼ਰਅੰਦਾਜ਼ ਪਹਿਲੂ ਹੈ ਇਨਪੁਟ ਡੇਟਾ ਪ੍ਰਮਾਣਿਕਤਾ ਦੀ ਭੂਮਿਕਾ। ਇਹ ਯਕੀਨੀ ਬਣਾਉਣਾ ਕਿ ਫੰਕਸ਼ਨ ਨੂੰ ਪਾਸ ਕੀਤੀਆਂ ਰੇਂਜਾਂ ਆਕਾਰ ਅਤੇ ਸਮੱਗਰੀ ਵਿੱਚ ਇਕਸਾਰ ਹੋਣ। ਉਦਾਹਰਨ ਲਈ, ਦੋ ਰੇਂਜਾਂ ਦੇ ਵਿੱਚਕਾਰ ਕਤਾਰਾਂ ਦੀ ਸੰਖਿਆ ਵਿੱਚ ਬੇਮੇਲ ਹੋਣ ਨਾਲ ਰਨਟਾਈਮ ਵਿੱਚ ਤਰੁੱਟੀਆਂ ਜਾਂ ਗਲਤ ਨਤੀਜੇ ਹੋ ਸਕਦੇ ਹਨ। ਫੰਕਸ਼ਨ ਦੀ ਸ਼ੁਰੂਆਤ 'ਤੇ ਇਨਪੁਟਸ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਕੇ, ਤੁਸੀਂ ਅਚਾਨਕ ਵਿਵਹਾਰ ਦੇ ਜੋਖਮ ਨੂੰ ਘਟਾਉਂਦੇ ਹੋ, ਤੁਹਾਡੀਆਂ VBA ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ ਮਜ਼ਬੂਤ ਅਤੇ ਡੀਬੱਗ ਕਰਨਾ ਆਸਾਨ ਬਣਾਉਂਦੇ ਹੋ।
ਇਕ ਹੋਰ ਵਿਚਾਰ ਮਾਪਯੋਗਤਾ ਹੈ. 30,000 ਕਤਾਰਾਂ ਤੱਕ ਪਹੁੰਚਣ ਵਾਲੇ ਡੇਟਾਸੇਟਾਂ ਦੇ ਨਾਲ, ਪ੍ਰਦਰਸ਼ਨ ਅਨੁਕੂਲਤਾ ਮਹੱਤਵਪੂਰਨ ਬਣ ਜਾਂਦੀ ਹੈ। ਲੀਵਰੇਜਿੰਗ ਵਿਧੀਆਂ ਜਿਵੇਂ ਕਿ ਮੌਜੂਦ ਹੈ ਡਿਕਸ਼ਨਰੀ ਦੇ ਅੰਦਰ ਅਤੇ ਬੇਲੋੜੀਆਂ ਜਾਂਚਾਂ ਨੂੰ ਘੱਟ ਕਰਨਾ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਫੰਕਸ਼ਨ ਕੁਸ਼ਲਤਾ ਨਾਲ ਚੱਲਦਾ ਹੈ। ਡੀਬੱਗਿੰਗ ਟੂਲ ਸ਼ਾਮਲ ਕਰਨਾ ਜਿਵੇਂ ਕਿ Debug.Print ਕਾਰਗੁਜ਼ਾਰੀ ਦੀ ਨਿਗਰਾਨੀ ਕਰਨ ਅਤੇ ਰੁਕਾਵਟਾਂ ਦੀ ਪਛਾਣ ਕਰਨ ਵਿੱਚ ਹੋਰ ਸਹਾਇਤਾ। ਇਹ ਤਕਨੀਕਾਂ, ਸਹੀ ਤਰੁੱਟੀ ਪ੍ਰਬੰਧਨ ਦੇ ਨਾਲ ਮਿਲ ਕੇ, ਤੁਹਾਨੂੰ ਗੁੰਝਲਦਾਰ ਦ੍ਰਿਸ਼ਾਂ ਨੂੰ ਸਹਿਜੇ ਹੀ ਸੰਭਾਲਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੀਆਂ ਹਨ, ਜਿਵੇਂ ਕਿ ਉਪਭੋਗਤਾ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਮਾਪਦੰਡਾਂ ਦੇ ਆਧਾਰ 'ਤੇ ਵਿਲੱਖਣ ਉਤਪਾਦ ਰਿਪੋਰਟਾਂ ਤਿਆਰ ਕਰਨਾ। 💡
VBA ਡਿਕਸ਼ਨਰੀ: ਆਮ ਸਵਾਲਾਂ ਦੇ ਜਵਾਬ ਦੇਣਾ
- ਕੀ ਹੈ ਏ Dictionary VBA ਵਿੱਚ ਵਸਤੂ?
- ਏ Dictionary VBA ਵਿੱਚ ਇੱਕ ਡਾਟਾ ਢਾਂਚਾ ਹੈ ਜੋ ਮੁੱਖ-ਮੁੱਲ ਜੋੜਿਆਂ ਨੂੰ ਸਟੋਰ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਕੁਸ਼ਲ ਡਾਟਾ ਪ੍ਰਬੰਧਨ ਲਈ ਸਹਾਇਕ ਹੈ ਅਤੇ ਡੁਪਲੀਕੇਟ ਨੂੰ ਖਤਮ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ।
- ਕਿਵੇਂ ਕਰਦਾ ਹੈ Exists ਪ੍ਰਦਰਸ਼ਨ ਵਿੱਚ ਸੁਧਾਰ?
- ਦ Exists ਵਿਧੀ ਜਾਂਚ ਕਰਦੀ ਹੈ ਕਿ ਕੀ ਸ਼ਬਦਕੋਸ਼ ਵਿੱਚ ਪਹਿਲਾਂ ਹੀ ਕੋਈ ਕੁੰਜੀ ਮੌਜੂਦ ਹੈ, ਡੁਪਲੀਕੇਟ ਨੂੰ ਰੋਕਦਾ ਹੈ ਅਤੇ ਬੇਲੋੜੇ ਜੋੜਾਂ ਤੋਂ ਬਚ ਕੇ ਪ੍ਰੋਸੈਸਿੰਗ ਸਮਾਂ ਬਚਾਉਂਦਾ ਹੈ।
- VBA ਫੰਕਸ਼ਨਾਂ ਵਿੱਚ ਇੰਪੁੱਟ ਪ੍ਰਮਾਣਿਕਤਾ ਮਹੱਤਵਪੂਰਨ ਕਿਉਂ ਹੈ?
- ਇਨਪੁਟ ਪ੍ਰਮਾਣਿਕਤਾ ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਤੁਹਾਡੇ ਫੰਕਸ਼ਨ ਨੂੰ ਪਾਸ ਕੀਤਾ ਗਿਆ ਡੇਟਾ ਸਹੀ ਢੰਗ ਨਾਲ ਫਾਰਮੈਟ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਇਕਸਾਰ ਕੀਤਾ ਗਿਆ ਹੈ, ਰਨਟਾਈਮ ਗਲਤੀਆਂ ਅਤੇ ਗਲਤ ਤਰਕ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਤੋਂ ਬਚਿਆ ਹੋਇਆ ਹੈ।
- VBA ਸਕ੍ਰਿਪਟਾਂ ਲਈ ਕੁਝ ਡੀਬੱਗਿੰਗ ਤਕਨੀਕਾਂ ਕੀ ਹਨ?
- ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ Debug.Print, ਬ੍ਰੇਕਪੁਆਇੰਟ ਸੈਟ ਕਰਨਾ ਅਤੇ ਕੋਡ ਰਾਹੀਂ ਕਦਮ ਚੁੱਕਣਾ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਡੀਬਗਿੰਗ ਵਿਧੀਆਂ ਹਨ ਜੋ ਤਰਕ ਦੀਆਂ ਗਲਤੀਆਂ ਦੀ ਪਛਾਣ ਕਰਨ ਅਤੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਫਲੋ ਦੀ ਨਿਗਰਾਨੀ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦੀਆਂ ਹਨ।
- ਕੀ ਸ਼ਬਦਕੋਸ਼ ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਸੰਭਾਲ ਸਕਦੇ ਹਨ?
- ਹਾਂ, Dictionaries ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਅਨੁਕੂਲਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ ਜਦੋਂ ਵਿਲੱਖਣ ਫਿਲਟਰਿੰਗ ਅਤੇ ਤੇਜ਼ ਖੋਜਾਂ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।
VBA ਨਾਲ ਡਾਟਾ ਫਿਲਟਰਿੰਗ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣਾ
VBA ਸ਼ਬਦਕੋਸ਼ਾਂ ਦੀ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਢੰਗ ਨਾਲ ਵਰਤੋਂ ਕਰਨ ਲਈ ਵੇਰਵੇ ਵੱਲ ਧਿਆਨ ਦੇਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ ਇਨਪੁਟਸ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਨਾ ਅਤੇ ਐਡਵਾਂਸਡ ਕਮਾਂਡਾਂ ਦਾ ਲਾਭ ਲੈਣਾ। ਮੌਜੂਦ ਹੈ. ਇਹ ਵੱਡੇ ਡੇਟਾਸੈਟਾਂ ਨਾਲ ਨਜਿੱਠਣ ਦੌਰਾਨ ਪ੍ਰਦਰਸ਼ਨ ਅਤੇ ਸ਼ੁੱਧਤਾ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ।
ਸੰਭਾਵੀ ਮੁੱਦਿਆਂ ਨੂੰ ਸੰਬੋਧਿਤ ਕਰਕੇ, ਜਿਵੇਂ ਕਿ ਰੇਂਜਾਂ ਦੀ ਇਕਸਾਰਤਾ ਜਾਂ ਡੁਪਲੀਕੇਟ ਮੁੱਲ, ਅਤੇ ਮਜ਼ਬੂਤ ਗਲਤੀ-ਪ੍ਰਬੰਧਨ ਵਿਧੀਆਂ ਨੂੰ ਲਾਗੂ ਕਰਕੇ, ਤੁਸੀਂ ਭਰੋਸੇਮੰਦ ਅਤੇ ਮੁੜ ਵਰਤੋਂ ਯੋਗ VBA ਹੱਲ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੇ ਹੋ। ਇਹਨਾਂ ਸੁਝਾਵਾਂ ਨਾਲ, ਗੁੰਝਲਦਾਰ ਐਕਸਲ ਕਾਰਜਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨਾ ਸਿੱਧਾ ਅਤੇ ਕੁਸ਼ਲ ਬਣ ਜਾਂਦਾ ਹੈ। 🛠️
ਸਰੋਤ ਅਤੇ ਹਵਾਲੇ
- ਬਾਰੇ ਵੇਰਵੇ VBA ਡਿਕਸ਼ਨਰੀ ਆਬਜੈਕਟ ਅਤੇ ਇਸ ਦੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਅਧਿਕਾਰਤ ਮਾਈਕ੍ਰੋਸਾੱਫਟ ਦਸਤਾਵੇਜ਼ਾਂ 'ਤੇ ਪਾਇਆ ਜਾ ਸਕਦਾ ਹੈ: ਮਾਈਕ੍ਰੋਸਾੱਫਟ VBA ਹਵਾਲਾ .
- VBA ਡੇਟਾ ਪ੍ਰੋਸੈਸਿੰਗ ਲਈ ਵਿਹਾਰਕ ਉਦਾਹਰਨਾਂ ਅਤੇ ਸਮੱਸਿਆ ਨਿਪਟਾਰਾ ਸੁਝਾਅ ਇਸ ਕਮਿਊਨਿਟੀ ਚਰਚਾ ਤੋਂ ਹਵਾਲਾ ਦਿੱਤੇ ਗਏ ਸਨ: ਸਟੈਕ ਓਵਰਫਲੋ: VBA ਡਿਕਸ਼ਨਰੀ ਟਿਪਸ .
- ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ VBA ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣ ਲਈ ਦਿਸ਼ਾ-ਨਿਰਦੇਸ਼ ਇੱਥੇ ਉਪਲਬਧ ਹਨ: ਐਕਸਲ ਗਰਿੱਡ ਤੋਂ ਬਾਹਰ .