VBA માં ફાઇન્ડ ફંક્શનનો ઉપયોગ કેવી રીતે કરવો (6 ઉદાહરણો)

  • આ શેર કરો
Hugh West

આપણે વિઝ્યુઅલ બેઝિક એપ્લીકેશન (VBA) માં ઉપયોગ કરીએ છીએ તે સૌથી મહત્વપૂર્ણ અને વ્યાપકપણે ઉપયોગમાં લેવાતા ફંક્શનમાંનું એક ફાઇન્ડ ફંક્શન છે. આ લેખમાં, હું તમને બતાવીશ કે તમે યોગ્ય ઉદાહરણો અને ચિત્રો સાથે એક્સેલના FIND ફંક્શન નો ઉપયોગ કેવી રીતે કરી શકો છો.

પ્રેક્ટિસ વર્કબુક ડાઉનલોડ કરો

<6 Excel.xlsm માં VBA માં ફંક્શન શોધો

6 VBA માં FIND ફંક્શનનો ઉપયોગ કરવા માટેના ઝડપી ઉદાહરણો

અહીં અમે માર્ટિન બુકસ્ટોર નામની બુકશોપના કેટલાક પુસ્તકોના પુસ્તકના નામ, લેખકો અને કિંમત સાથેનો ડેટા સેટ મળ્યો.

આજે અમારો હેતુ આ ડેટા સેટમાંથી VBA ના Find function ના વિવિધ પ્રકારના ઉપયોગો જોવાનો છે.

1. VBA માં ફાઇન્ડ ફંક્શન નો ઉપયોગ કોઈ પેરામીટર વગર કરો

તમે VBA ના Find function નો કોઈ પેરામીટર વગર ઉપયોગ કરી શકો છો.

પછી તે કોષોની શ્રેણીમાં ચોક્કસ મૂલ્યની શોધ કરશે અને તેને મળેલી પ્રથમ મેચ પરત કરશે.

ચાલો નામ શોધીએ “P. B. Shelly” કૉલમ Author ( C4:C13 ).

Find function સાથેની લાઇન આ હશે:

Set cell = Range("C4:C17").Find("P. B. Shelly")

સંપૂર્ણ VBA કોડ હશે:

VBA કોડ:

3685

આઉટપુટ:

તે બનાવે છે મેક્રો કહેવાય છે શોધો . જો તમે મેક્રો ચલાવો છો, તો તે $C$6 , નામ P સાથેનું પ્રથમ સેલ સરનામું પરત કરશે. બી. શેલી .

વધુ વાંચો: માં VBA સાથે શ્રેણીમાં શોધોએક્સેલ: ચોક્કસ અને આંશિક મેળ સહિત

2. આફ્ટર પેરામીટર સાથે VBA માં ફાઇન્ડ ફંક્શન લાગુ કરો (ચોક્કસ સેલમાંથી શોધ શરૂ કરવા માટે)

તમે Find function સાથે After પેરામીટરનો ઉપયોગ કરી શકો છો VBA માં. પછી તે શ્રેણીની અંદર સેલની નીચેથી મૂલ્ય શોધવાનું શરૂ કરશે.

ઉદાહરણ તરીકે, ચાલો નામ શોધવાનું શરૂ કરીએ “P. B. Shelly” નીચેના કોષમાંથી C6 .

કોડની લાઇન આ હશે:

Set cell = Range("C4:C13").Find("P. B. Shelly", After:=Range("C6"))

અને સંપૂર્ણ VBA કોડ હશે:

VBA કોડ:

8254

આઉટપુટ:

તે $C$13 પાછું આવશે કારણ કે તે નીચેના સેલ C6 થી શોધવાનું શરૂ કરે છે, તે સેલ C7 માંથી છે. તેથી તેને P મળે છે. B. શેલી સેલમાં C13 પ્રથમ.

વધુ વાંચો: એમાં સ્ટ્રિંગ કેવી રીતે શોધવી એક્સેલમાં VBA નો ઉપયોગ કરનાર સેલ

3. આફ્ટર પેરામીટરની આસપાસ વીંટાળીને VBA માં ફાઇન્ડ ફંક્શન ચલાવો (સર્કુલર રીતે મૂલ્ય શોધવા માટે)

ફાઇન્ડ ફંક્શન<2 સાથે પછી પેરામીટર> ગોળાકાર રીતે મૂલ્યની શોધ કરે છે

એટલે કે, તે શ્રેણીની અંદર કોષની નીચેથી શોધવાનું શરૂ કરે છે, શ્રેણીમાં શોધ કરવાનું સમાપ્ત કરે છે, અને પછી ફરીથી શ્રેણીની ટોચ પરથી શરૂ થાય છે.

ઉદાહરણ તરીકે, ચાલો After પેરામીટરનો ઉપયોગ કરીને “John Keats” નીચેના સેલ C8 નામને શોધવાનું શરૂ કરીએ.

ની લાઇન કોડ હશે:

Set cell = Range("C4:C13").Find("John Keats", After:=Range("C8"))

અનેપૂર્ણ VBA કોડ હશે:

VBA કોડ:

8176

આઉટપુટ:

તે $C$7 પરત કરશે કારણ કે તે નીચેના કોષ C8 થી શોધવાનું શરૂ કરે છે, જેમાંથી છે સેલ C9 .

તે સેલ C13 સુધી કંઈપણ શોધી શકતું નથી, તેથી તે ફરીથી સેલ C4 થી શરૂ થાય છે અને કોષમાં એક શોધે છે C7 .

સમાન વાંચન:

  • VBA સાથે સ્ટ્રિંગ કેવી રીતે શોધવી Excel માં (8 ઉદાહરણો)
  • એક્સેલમાં VBA નો ઉપયોગ કરીને ચોક્કસ મેળ શોધો (5 રીતો)
  • VBA નો ઉપયોગ કરીને કેવી રીતે શોધવું અને બદલવું (11 માર્ગો)

4. લુકએટ પેરામીટર (ચોક્કસ અથવા આંશિક મેચ માટે) સાથે VBA માં ફાઇન્ડ ફંક્શનનો ઉપયોગ કરો

તમે <1 સાથે VBA માં Find ફંક્શન નો ઉપયોગ કરી શકો છો>LookAt પેરામીટર.

એક ચોક્કસ મેળ માટે LookAt = xlWhole નો ઉપયોગ કરો અને આંશિક માટે LookAt=xlPart નો ઉપયોગ કરો મેચ.

ઉદાહરણ તરીકે, ચાલો એ શોધવાનો પ્રયાસ કરીએ કે પુસ્તકનું નામ કૉલમ ( "ઓડ" નામનું કોઈ પુસ્તક છે કે કેમ>B4:B13 ).

જો આપણે કોડની લાઇનમાં xlWhole નો ઉપયોગ કરીએ:

Set cell = Range("B4:B13").Find("Ode", LookAt:=xlWhole)

આઉટપુટ ભૂલ બતાવશે કારણ કે તે કોઈપણ ચોક્કસ મેળ શોધી શકશે નહીં.

પરંતુ જો તમે ઉપયોગ કરો છો:

<7 Set cell = Range("B4:B13").Find("Ode", LookAt:=xlPart)

પછી તે પરત આવશે $B$9 , કારણ કે સેલમાં “Ode” નામનું પુસ્તક છે. B7 , Ode to the Nightingale.

તેથી આંશિક મેચ માટે સંપૂર્ણ કોડછે:

VBA કોડ:

8099

5. સર્ચ ડાયરેક્શન પેરામીટર (શોધની દિશા સ્પષ્ટ કરવા) સાથે VBA માં ફાઇન્ડ ફંક્શન ચલાવો

તમે VBA માં Find ફંક્શન નો ઉપયોગ પણ કરી શકો છો શોધ દિશા પરિમાણ.

ટોપથી નીચે શોધવા માટે શોધ દિશા = xl આગળ નો ઉપયોગ કરો.

અને શોધ દિશા = xlPrevious બોટમ થી ટોપ શોધવા માટે.

ઉદાહરણ તરીકે, ચાલો લેખક એલિફ શફાક ને કૉલમ લેખક માં શોધવાનો પ્રયાસ કરીએ. ( C4:C13 ).

જો આપણે કોડની લાઇનમાં xlNext નો ઉપયોગ કરીએ:

Set cell = Range("C4:C13").Find("Elif Shafak", SearchDirection:=xlNext)

પછી તે $C$5 પરત કરશે.

પરંતુ જો તમે ઉપયોગ કરો છો:

Set cell = Range("C4:C13").Find("Elif Shafak", SearchDirection:=xlPrevious)

પછી તે પરત આવશે $C$11 .

તેથી નીચેથી ઉપર સુધી શોધવા માટે સંપૂર્ણ કોડ છે:

VBA કોડ:

4663

6. મેચકેસ પેરામીટર (કેસ-સંવેદનશીલ અથવા અસંવેદનશીલ મેચ માટે) સાથે VBA માં ફંક્શન શોધો

છેવટે, તમે મેચકેસ પેરામીટર સાથે ફંક્શન શોધો નો ઉપયોગ કરી શકો છો.

કેસ-સંવેદી મેચ , અને માટે MatchCase=False માટે MatchCase = True નો ઉપયોગ કરો કેસ-અસંવેદનશીલ મેળ ).

જો આપણે કોડની લાઇનમાં True નો ઉપયોગ કરીએ તો:

Set cell = Range("B4:B13").Find("mother", MatchCase:=True)

આઉટપુટ ભૂલ બતાવશે કારણ કે તે થશે' કોઈ શોધો નહીંમેચ.

પરંતુ જો તમે ઉપયોગ કરો છો:

Set cell = Range("B4:B13").Find("mother", MatchCase:=False)

તો તે પરત આવશે $ B$9 કારણ કે સેલ B8 માં “માતા” નામનું પુસ્તક છે.

તેથી સંપૂર્ણ કોડ કેસ-અસંવેદનશીલ મેચ છે:

VBA કોડ:

5490

<4 નિષ્કર્ષ

આ પદ્ધતિઓનો ઉપયોગ કરીને, તમે વિઝ્યુઅલ બેઝિક એપ્લિકેશનમાં ફાઇન્ડ ફંક્શનનો ઉપયોગ કરી શકો છો. શું તમારી પાસે કોઈ પ્રશ્નો છે? અમને પૂછવા માટે નિઃસંકોચ.

હ્યુજ વેસ્ટ ઉદ્યોગમાં 10 વર્ષથી વધુનો અનુભવ ધરાવતા અત્યંત અનુભવી એક્સેલ ટ્રેનર અને વિશ્લેષક છે. તેમણે એકાઉન્ટિંગ અને ફાઇનાન્સમાં સ્નાતકની ડિગ્રી અને બિઝનેસ એડમિનિસ્ટ્રેશનમાં માસ્ટર ડિગ્રી ધરાવે છે. હ્યુને શીખવવાનો શોખ છે અને તેણે એક અનન્ય શિક્ષણ અભિગમ વિકસાવ્યો છે જે અનુસરવા અને સમજવામાં સરળ છે. એક્સેલના તેમના નિષ્ણાત જ્ઞાને વિશ્વભરના હજારો વિદ્યાર્થીઓ અને વ્યાવસાયિકોને તેમની કુશળતા સુધારવામાં અને તેમની કારકિર્દીમાં શ્રેષ્ઠ બનાવવામાં મદદ કરી છે. તેમના બ્લોગ દ્વારા, હ્યુજ તેમના જ્ઞાનને વિશ્વ સાથે શેર કરે છે, વ્યક્તિઓ અને વ્યવસાયોને તેમની સંપૂર્ણ ક્ષમતા સુધી પહોંચવામાં મદદ કરવા માટે મફત એક્સેલ ટ્યુટોરિયલ્સ અને ઑનલાઇન તાલીમ ઓફર કરે છે.