ਵਿਸ਼ਾ - ਸੂਚੀ
Microsoft Excel ਨਾਲ ਕੰਮ ਕਰਦੇ ਸਮੇਂ, ਕਈ ਵਾਰ ਸਾਨੂੰ ਇੱਕ ਰੇਂਜ ਵਿੱਚ ਮੈਚ ਮੁੱਲ ਲੱਭਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਅਸੀਂ ਇਸਨੂੰ ਐਕਸਲ ਫੰਕਸ਼ਨਾਂ ਨਾਲ ਆਸਾਨੀ ਨਾਲ ਕਰ ਸਕਦੇ ਹਾਂ। VBA ਵਿੱਚ ਫੰਕਸ਼ਨ ਹਨ ਜੋ ਅਸੀਂ ਵਰਤ ਸਕਦੇ ਹਾਂ, ਪਰ ਉਹਨਾਂ ਵਿੱਚੋਂ ਕੋਈ ਵੀ MATCH ਦੇ ਬਰਾਬਰ ਨਹੀਂ ਹੈ। ਇਸ ਲੇਖ ਵਿੱਚ, ਅਸੀਂ ਸਿੱਖਾਂਗੇ ਕਿ Excel VBA ਨਾਲ ਇੱਕ ਰੇਂਜ ਵਿੱਚ ਇੱਕ ਮੁੱਲ ਨੂੰ ਕਿਵੇਂ ਮੇਲਣਾ ਹੈ।
ਪ੍ਰੈਕਟਿਸ ਵਰਕਬੁੱਕ ਡਾਊਨਲੋਡ ਕਰੋ
ਤੁਸੀਂ ਡਾਉਨਲੋਡ ਕਰ ਸਕਦੇ ਹੋ ਵਰਕਬੁੱਕ ਅਤੇ ਉਹਨਾਂ ਨਾਲ ਅਭਿਆਸ ਕਰੋ।
ਰੇਂਜ.xlsm ਵਿੱਚ VBA ਮੈਚ ਵੈਲਯੂ
ਐਕਸਲ VBA ਮੈਚ ਫੰਕਸ਼ਨ ਦੀ ਜਾਣ-ਪਛਾਣ
ਐਕਸਲ VBA ਵਿੱਚ ਮੈਚ ਫੰਕਸ਼ਨ ਇੱਕ ਮਦਦਗਾਰ ਨਿਰਮਿਤ ਲੁੱਕਅਪ ਫੰਕਸ਼ਨ ਹੈ ਜੋ, ਜਿਵੇਂ ਕਿ VLOOKUP , HLOOKUP , ਅਤੇ INDEX ਫੰਕਸ਼ਨ, ਐਰੇ ਜਾਂ ਡੇਟਾਬੇਸ ਵਿੱਚ ਪ੍ਰਾਪਤ ਕੀਤੇ ਖੋਜ ਮੁੱਲਾਂ ਦੇ ਸਮਾਨ ਜਾਂ ਤੁਲਨਾਤਮਕ ਮੇਲ ਦਾ ਸਥਾਨ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ ਫੰਕਸ਼ਨ ਇੱਕ ਵਰਕਸ਼ੀਟ ਫੰਕਸ਼ਨ ਹੈ ਜੋ ਪ੍ਰੋਗਰਾਮ ਵਰਤਦਾ ਹੈ। ਕਿਉਂਕਿ ਇਹ ਇੱਕ ਵਰਕਸ਼ੀਟ ਫੰਕਸ਼ਨ ਹੈ, ਮੈਚ ਫੰਕਸ਼ਨ ਲਈ ਮਾਪਦੰਡ ਵਰਕਸ਼ੀਟ ਫੰਕਸ਼ਨ ਦੇ ਸਮਾਨ ਹਨ।
3 ਰੇਂਜ ਵਿੱਚ ਮੁੱਲ ਨਾਲ ਮੈਚ ਕਰਨ ਲਈ ਐਕਸਲ VBA ਦੀਆਂ ਉਦਾਹਰਨਾਂ
1। ਐਕਸਲ ਵਿੱਚ VBA ਮੈਚ ਫੰਕਸ਼ਨ ਦੇ ਨਾਲ ਰੇਂਜ ਵਿੱਚ ਮੁੱਲ ਦਾ ਮੇਲ ਕਰੋ
ਐਕਸਲ VBA ਮੈਚ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ, ਇੱਕ ਰੇਂਜ ਵਿੱਚ ਮੈਚ ਮੁੱਲ ਲੱਭਣ ਲਈ, ਅਸੀਂ ਹੇਠਾਂ ਦਿੱਤੇ ਡੇਟਾਸੈਟ ਦੀ ਵਰਤੋਂ ਕਰਨ ਜਾ ਰਹੇ ਹਾਂ . ਡੇਟਾਸੈਟ ਵਿੱਚ ਕਾਲਮ C ਵਿੱਚ ਕੁਝ ਵਿਦਿਆਰਥੀਆਂ ਦੇ ਨਾਮ, ਕਾਲਮ D ਵਿੱਚ ਇੱਕ ਖਾਸ ਵਿਸ਼ੇ 'ਤੇ ਉਹਨਾਂ ਦੇ ਅੰਕ, ਅਤੇ ਕਾਲਮ B ਵਿੱਚ ਹਰੇਕ ਵਿਦਿਆਰਥੀ ਦਾ ਸੀਰੀਅਲ ਨੰਬਰ ਹੈ। ਹੁਣ, ਮੰਨ ਲਓ ਅਸੀਂਕਿਸੇ ਖਾਸ ਨਿਸ਼ਾਨ ਦੇ ਸੈੱਲ G5 ਵਿੱਚ ਮੈਚ ਦੀ ਸਥਿਤੀ ਲੱਭਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਅਤੇ ਜਿਸ ਨਿਸ਼ਾਨ ਨੂੰ ਅਸੀਂ ਮੇਲ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹਾਂ ਉਹ ਸੈੱਲ F5 ਵਿੱਚ ਹੈ।
ਆਓ ਇਸ ਪ੍ਰਕਿਰਿਆ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਕਰੀਏ ਐਕਸਲ VBA ਮੈਚ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਇੱਕ ਰੇਂਜ ਵਿੱਚ ਮੈਚ ਮੁੱਲ ਲੱਭੋ।>ਪਹਿਲਾਂ, ਰਿਬਨ ਤੋਂ ਡਿਵੈਲਪਰ ਟੈਬ 'ਤੇ ਜਾਓ।
- ਖੋਲਣ ਦਾ ਇੱਕ ਹੋਰ ਤਰੀਕਾ ਵਿਜ਼ੂਅਲ ਬੇਸਿਕ ਐਡੀਟਰ ਵਰਕਸ਼ੀਟ 'ਤੇ ਸਿਰਫ਼ ਰਾਈਟ-ਕਲਿਕ ਕਰੋ ਅਤੇ ਕੋਡ ਦੇਖੋ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
- ਇਹ ਵਿਜ਼ੂਅਲ ਬੇਸਿਕ ਐਡੀਟਰ ਨੂੰ ਖੋਲ੍ਹੇਗਾ। ਹੁਣ, ਉੱਥੇ ਕੋਡ ਲਿਖੋ।
VBA ਕੋਡ:
3110
- ਉਸ ਤੋਂ ਬਾਅਦ, ਕੋਡ ਨੂੰ ਚਲਾਉਣ ਲਈ, F5 <ਦਬਾਓ। 2>ਆਪਣੇ ਕੀਬੋਰਡ 'ਤੇ ਕੁੰਜੀ ਜਾਂ ਰੱਬ ਸਬ ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
- ਅੰਤ ਵਿੱਚ, ਤੁਸੀਂ ਦੇਖ ਸਕਦੇ ਹੋ ਕਿ ਮੈਚ ਹੈ ਸਥਿਤੀ 5 ਵਿੱਚ ਮਿਲੀ।
🔎 VBA ਕੋਡ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ?
-
Sub example1_match()
: ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਅਸੀਂ ਮੈਕਰੋ ਨਾਮ ਦੇ ਕੇ ਇੱਕ ਉਪ-ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੇ ਹਾਂ। -
Range("G5").Value
: ਅਸੀਂ ਚਾਹੁੰਦੇ ਹਾਂ ਸੈੱਲ G5 ਵਿੱਚ ਸਟੋਰ ਕੀਤੇ ਜਾਣ ਵਾਲੇ ਆਉਟਪੁੱਟ। -
WorksheetFunction
: ਇਸ ਕੋਡ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਸੀਂ VBA ਫੰਕਸ਼ਨਾਂ ਤੱਕ ਪਹੁੰਚ ਕਰ ਸਕਾਂਗੇ।
-
Match(Range("F5").Value, Range("D5:D10"), 0)
: ਇੱਥੇ, ਅਸੀਂ VBA ਵਿੱਚ ਮੈਚ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ। ਜਿਵੇਂ ਅਸੀਂ ਮੁੱਲ ਲੈਣਾ ਚਾਹੁੰਦੇ ਹਾਂਸੈੱਲ F5 ਅਤੇ ਰੇਂਜ D5:D10 ਵਿੱਚ ਸਥਿਤੀ ਦਾ ਪਤਾ ਲਗਾਓ। -
End Sub
: ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਅਸੀਂ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਖਤਮ ਕਰਦੇ ਹਾਂ।
ਹੋਰ ਪੜ੍ਹੋ: ਕਾਲਮ ਵਿੱਚ ਸਟ੍ਰਿੰਗ ਨਾਲ ਮੇਲ ਕਰਨ ਲਈ ਐਕਸਲ VBA (5 ਉਦਾਹਰਨਾਂ)
2. ਕਿਸੇ ਹੋਰ ਵਰਕਸ਼ੀਟ ਤੋਂ ਮੁੱਲ ਨਾਲ ਮੇਲ ਕਰਨ ਲਈ ਐਕਸਲ VBA ਦੀ ਵਰਤੋਂ ਕਰੋ
ਅਸੀਂ ਐਕਸਲ ਵਿੱਚ VBA ਮੈਚ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਕਿਸੇ ਹੋਰ ਵਰਕਸ਼ੀਟ ਤੋਂ ਰੇਂਜ ਵਿੱਚ ਮੈਚ ਮੁੱਲ ਲੱਭ ਸਕਦੇ ਹਾਂ। ਮੰਨ ਲਓ, ਸਾਡੇ ਕੋਲ “ ਡਾਟਾ ” ਨਾਮ ਦੀ ਇੱਕ ਸ਼ੀਟ ਵਿੱਚ ਇੱਕ ਡੇਟਾਸੈਟ ਹੈ ਅਤੇ ਅਸੀਂ ਸ਼ੀਟ ਦੇ ਨਾਮ “ ਨਤੀਜਾ ” ਵਿੱਚ ਨਤੀਜਾ ਚਾਹੁੰਦੇ ਹਾਂ। ਅਤੇ ਅਸੀਂ ਉਹੀ ਡੇਟਾਸੈਟ ਵਰਤ ਰਹੇ ਹਾਂ। ਹੁਣ, ਆਉ ਅਜਿਹਾ ਕਰਨ ਲਈ ਕਦਮਾਂ ਦੀ ਪਾਲਣਾ ਕਰੀਏ।
ਸਟੈਪਸ:
- ਇਸ ਵਿੱਚ ਸ਼ੁਰੂ ਵਿੱਚ, ਪਿਛਲੀ ਉਦਾਹਰਨ ਦੇ ਸਮਾਨ ਟੋਕਨ ਦੁਆਰਾ, ਰਿਬਨ 'ਤੇ ਡਿਵੈਲਪਰ ਟੈਬ 'ਤੇ ਜਾਓ।
- ਫਿਰ, ਵਿਜ਼ੂਅਲ ਬੇਸਿਕ 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਜਾਂ Alt ਦਬਾਓ। + F11 ਵਿਜ਼ੂਅਲ ਬੇਸਿਕ ਐਡੀਟਰ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ।
- ਇਸਦੀ ਬਜਾਏ, ਵਿਜ਼ੂਅਲ ਬੇਸਿਕ ਐਡੀਟਰ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ, ਸ਼ੀਟ 'ਤੇ ਸੱਜਾ-ਕਲਿਕ ਕਰੋ ਅਤੇ ਚੁਣੋ। ਕੋਡ ਦੇਖੋ ।
- ਹੁਣ, VBA ਕੋਡ ਲਿਖੋ।
VBA ਕੋਡ:
6415
- ਅੱਗੇ, F5 ਕੁੰਜੀ ਦਬਾ ਕੇ ਜਾਂ Sub ਬਟਨ ਨੂੰ ਦਬਾ ਕੇ ਕੋਡ ਚਲਾਓ।
- ਅਤੇ, ਨਤੀਜਾ “ ਨਤੀਜਾ ” ਸ਼ੀਟ ਵਿੱਚ ਪਾਇਆ ਜਾਂਦਾ ਹੈ।
ਹੋਰ ਪੜ੍ਹੋ: 2 ਵਰਕਸ਼ੀਟਾਂ ਤੋਂ ਐਕਸਲ ਵਿੱਚ ਡੇਟਾ ਦਾ ਮੇਲ ਕਿਵੇਂ ਕਰੀਏ
ਸਮਾਨ ਰੀਡਿੰਗਾਂ
- ਐਕਸਲ ਵਿੱਚ VLOOKUP ਨਾਲ ਸਾਰੇ ਮੈਚਾਂ ਨੂੰ ਜੋੜੋ (3 ਆਸਾਨਤਰੀਕੇ)
- ਐਕਸਲ ਵਿੱਚ ਕੇਸ ਸੰਵੇਦਨਸ਼ੀਲ ਮੈਚ ਕਿਵੇਂ ਲੱਭੀਏ (6 ਫਾਰਮੂਲੇ)
- ਐਕਸਲ ਵਿੱਚ ਨਾਮਾਂ ਦਾ ਮੇਲ ਕਿਵੇਂ ਕਰੀਏ ਜਿੱਥੇ ਸਪੈਲਿੰਗ ਵੱਖਰੇ ਹਨ (8 ਤਰੀਕੇ )
3. ਰੇਂਜ ਵਿੱਚ ਮੇਲ ਖਾਂਦਾ ਮੁੱਲ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਐਕਸਲ VBA ਲੂਪਸ
ਮੰਨ ਲਓ, ਅਸੀਂ ਮੁੱਲ ਨਾਲ ਮੇਲ ਕਰਨ ਲਈ ਇੱਕ ਤੋਂ ਵੱਧ ਚਿੰਨ੍ਹ ਚਾਹੁੰਦੇ ਹਾਂ, ਅਸੀਂ ਇਸਦੇ ਲਈ VBA ਲੂਪਸ ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ। ਅਸੀਂ ਪਹਿਲਾਂ ਵਾਂਗ ਹੀ ਡੇਟਾਸੈਟ ਵਰਤ ਰਹੇ ਹਾਂ। ਹੁਣ, ਅਸੀਂ ਕਾਲਮ G ਵਿੱਚ ਮੈਚ ਪੋਜੀਸ਼ਨ ਚਾਹੁੰਦੇ ਹਾਂ, ਅਤੇ ਜੋ ਚਿੰਨ੍ਹ ਅਸੀਂ ਮੈਚ ਲੱਭਣਾ ਚਾਹੁੰਦੇ ਹਾਂ ਉਹ ਕਾਲਮ F ਵਿੱਚ ਹਨ। ਆਉ ਹੇਠਾਂ ਦੇ ਕਦਮਾਂ ਨੂੰ ਵੇਖੀਏ।
ਪੜਾਅ:
- ਸਭ ਤੋਂ ਪਹਿਲਾਂ, ਰਿਬਨ ਤੋਂ, 'ਤੇ ਜਾਓ। ਡਿਵੈਲਪਰ ਟੈਬ।
- ਦੂਜਾ, ਵਿਜ਼ੂਅਲ ਬੇਸਿਕ ਐਡੀਟਰ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ, ਵਿਜ਼ੂਅਲ ਬੇਸਿਕ 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਜਾਂ Alt + F11 ਦਬਾਓ।
- ਜਾਂ, ਬਸ ਸ਼ੀਟ 'ਤੇ ਸੱਜਾ-ਕਲਿਕ ਕਰੋ ਅਤੇ ਕੋਡ ਦੇਖੋ ਨੂੰ ਚੁਣੋ।
- ਇਹ ਖੋਲ੍ਹੇਗਾ। ਵਿਜ਼ੂਅਲ ਬੇਸਿਕ ਐਡੀਟਰ ।
- ਹੁਣ, ਉੱਥੇ ਕੋਡ ਟਾਈਪ ਕਰੋ।
VBA ਕੋਡ:
6019
- ਉਸ ਤੋਂ ਬਾਅਦ, F5 ਕੁੰਜੀ ਨੂੰ ਦਬਾਉਣ ਜਾਂ ਸਬ ਚਲਾਓ ਬਟਨ ਨੂੰ ਦਬਾਉਣ ਨਾਲ ਕੋਡ ਚੱਲੇਗਾ।
- ਅਤੇ, ਤੁਸੀਂ ਕਾਲਮ G ਵਿੱਚ ਨਤੀਜਾ ਦੇਖ ਸਕੋਗੇ।
🔎 VBA ਕੋਡ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ?
-
For i = 5 To 8
: ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਅਸੀਂ ਲੂਪ ਨੂੰ ਕਤਾਰ 5 ਨਾਲ ਸ਼ੁਰੂ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹਾਂ। ਅਤੇ ਕਤਾਰ 8 ਨਾਲ ਖਤਮ ਹੁੰਦਾ ਹੈ। -
Cells(i, 7).Value
: ਇਹ ਹਰ ਕਤਾਰ ਵਿੱਚ ਨਤੀਜੇ ਵਾਲੇ ਸਥਾਨਾਂ ਦੇ ਮੁੱਲ ਨੂੰ 5 ਤੋਂ 8 ਤੱਕ ਸੁਰੱਖਿਅਤ ਕਰਦਾ ਹੈ। ਕਾਲਮ G ਵਿੱਚ ਕਤਾਰਾਂਜੋ ਕਿ ਕਾਲਮ ਨੰਬਰ 7 ਹੈ। -
Match(Cells(i, 6).Value, Range("D5:D10"), 0)
: ਸੈੱਲਾਂ ਨੂੰ ਮੈਚ ਫੰਕਸ਼ਨ (i, 6) ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਮਿਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ਮੁੱਲ 6ਵੇਂ ਕਾਲਮ ਦੀਆਂ 8 ਕਤਾਰਾਂ 5 ਦੁਆਰਾ ਲੱਭੇ ਗਏ ਹਰੇਕ ਲੁੱਕਅੱਪ ਮੁੱਲ ਲਈ ਖੋਜ ਕਰਦੇ ਹਨ। ਫਿਰ ਇੱਕ ਐਕਸਲ ਸ਼ੀਟ 'ਤੇ ਐਰੇ D5:D10 ਵਿੱਚ ਖੋਜਿਆ ਗਿਆ ਜਿੱਥੇ ਡੇਟਾ ਉਪਲਬਧ ਹੈ।
ਹੋਰ ਪੜ੍ਹੋ: Excel ਦੋ ਕਾਲਮਾਂ ਵਿੱਚ ਮੇਲ ਖਾਂਦੇ ਮੁੱਲ ਲੱਭੋ
ਧਿਆਨ ਵਿੱਚ ਰੱਖਣ ਵਾਲੀਆਂ ਗੱਲਾਂ
- ਜੇਕਰ ਮੈਚ ਦੀ ਕਿਸਮ ਗੁੰਮ ਹੈ ਜਾਂ ਨਿਰਧਾਰਤ ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੈ, ਤਾਂ ਇਸਨੂੰ 1<2 ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ>.
- ਜੇਕਰ ਕੋਈ ਮੇਲ ਨਹੀਂ ਲੱਭਿਆ, ਤਾਂ ਇੱਕ ਸੰਬੰਧਿਤ ਐਕਸਲ ਖੇਤਰ ਖਾਲੀ ਰਹੇਗਾ।
- ਲੁੱਕਅੱਪ ਮੁੱਲ ਇੱਕ ਸੰਖਿਆਤਮਕ, ਅੱਖਰ, ਜਾਂ ਲਾਜ਼ੀਕਲ ਡੇਟਾ, ਜਾਂ ਇੱਕ ਮਾਤਰਾ, ਟੈਕਸਟ ਲਈ ਇੱਕ ਸੈੱਲ ਸੰਦਰਭ ਹੋ ਸਕਦਾ ਹੈ , ਜਾਂ ਲਾਜ਼ੀਕਲ ਮਹੱਤਵ।
ਸਿੱਟਾ
ਉਪਰੋਕਤ ਵਿਧੀਆਂ ਐਕਸਲ VBA ਵਿੱਚ ਇੱਕ ਰੇਂਜ ਵਿੱਚ ਮੁੱਲਾਂ ਨਾਲ ਮੇਲ ਕਰਨ ਵਿੱਚ ਤੁਹਾਡੀ ਮਦਦ ਕਰਨਗੀਆਂ। ਉਮੀਦ ਹੈ ਕਿ ਇਹ ਤੁਹਾਡੀ ਮਦਦ ਕਰੇਗਾ! ਜੇਕਰ ਤੁਹਾਡੇ ਕੋਈ ਸਵਾਲ, ਸੁਝਾਅ, ਜਾਂ ਫੀਡਬੈਕ ਹਨ ਤਾਂ ਕਿਰਪਾ ਕਰਕੇ ਟਿੱਪਣੀ ਭਾਗ ਵਿੱਚ ਸਾਨੂੰ ਦੱਸੋ। ਜਾਂ ਤੁਸੀਂ ExcelWIKI.com ਬਲੌਗ!
ਵਿੱਚ ਸਾਡੇ ਹੋਰ ਲੇਖਾਂ ਨੂੰ ਦੇਖ ਸਕਦੇ ਹੋ।