Skip to main content

Learn How to Create Spin Button,Scroll Button Next, Back, Search, Edit,Delete, Button TextBox Sum in VBA

नमस्कार दोस्तों कैसे हो आप सभी।
आज हम VBA मैं सीखेंगे टूलबॉक्स के स्पिन बटन,स्क्रॉल बार बटन  का इस्तेमाल और नेक्स्ट बटन , बैक बटन , सर्च बटन, एडिट बटन ,डिलीट बटन, टेस्टबोक्स को सम करना इत्यादि। तो दोस्तों सब से पहले हम बात करेंगे स्पिन बटन की। स्पिन बटन करता क्या हैं ?

  • स्पिन बटन 
स्पिन बटन नोर्मल्ली नंबर को बढ़ाने का काम करता हैं। मान लीजिए हम एक ऐसा बटन बनाये जहा पर नंबर टाइप करने की जरुरत ही ना हो। बस बटन पर क्लिक करे और नंबर अपने आप बढ़ते जाये। स्पिन बटन यही काम करता हैं।
उदाहरण के तौर  पर हमे एक कॉलम मैं ये पूछना हैं की आपकी उम्र कितनी हैं? और उसके बाजु वाली कॉलम मैं एक बटन बनाये और बटन पर क्लिक करके नंबर को सेलेक्ट करे।  एक्सेल शीट मैं इस तरह की एक टेबल बनाये।
१)डेवलपर मेनू मैं क्लिक करके , इन्सर्ट  सेलेक्ट करे।
२) टूल बॉक्स से स्पिन बटन को सेलेक्ट करे और वर्कशीट पर ड्रैग करे।

३) स्पिन बटन पर डबल क्लिक करे।  और प्रोग्राम टाइप करे। 
४)प्रॉपर्टीज मेनु मैं तोडा बदलाव करे। 
लिंक्ड सेल मैं हमने "B2" लिखा हैं। क्युकी जब हम स्पिन बटन प्रेस करेंगे तो उसका रिजल्ट हमे B2 कॉलम मैं दिखाई देना चाहिए। 
मैक्स मैं मैक्सिमम वैल्यू १०० रखा हैं।  और 
मीन  मैं  0  ( 0 से 100 के बिच की वैल्यू आप सेलेक्ट कर सकते हैं। )
स्माल चेंज मैं 2 को रखा हैं ताकि नंबर चेंज होते रहें। २ ,४ ,६ इस तरह।
 (नोट: आप यहाँ पर १ नंबर भी सेलेक्ट कर सकते हैं। जिस से एक एक नंबर बढ़ेगा। )
५)रन बटन पर क्लिक करे।  और प्रोग्राम को चेक करे। 
जब आप ऊपर वाले रौ पर क्लिक करेंगे तो आपका नंबर २ बढ़ जायेंगे। 
और जब डाउन एरो पर क्लिक करेंगे तो नंबर कम हो जायेगा। 

इस तरह से हम इसका इस्तेमाल लोन अमाउंट काउंट करने के लिए भी कर  सकते हैं। 
आइये इसे भी समझते हैं। 

  • Loan Calculator 
अगर आप लोन कैलकुलेटर बनाना चाहते हो तो आपको सबसे पहले एक्सेल मैं कुछ इस तरह वर्कशीट को डिज़ाइन करना होगा।


१) डेवलपर मेनू पर क्लिक करे इन्सर्ट से स्क्रॉल बार  बटन को सेलेक्ट करे, इंटरेस्ट और टर्म के सामने ड्रैग करे।नोट: जब आप बटन ड्रैग करे तो याद रहे डिज़ाइन मोड को ऑन रखे। 


२) इंटरेस्ट बार के सामने जो  स्क्रॉल बार है उसपर डबल क्लिक करे और प्रॉपर्टीज मैं थोड़ा बदलाव करे। 
    Large Change =2
    Max=20 Interest Rate  यहाँ  पर हमने इंटरेस्ट रेट 20 रखा हैं और मिनिमम 0 
    Min=0
    Small Change=0

3)टर्म  बार के सामने जो  स्क्रॉल बार है उसपर डबल क्लिक करे और प्रॉपर्टीज मैं थोड़ा बदलाव करे।
Linked Cell F7 लिखे जिसे की जब आपका रिजल्ट कॉलम F7 पर दिखे
Max= 30 यहाँ पर लोन टर्म ३० साल रखा हैं।
Min =5  और कम से कम ५ साल के लिए।
Large Change =5
Small Change =1
 यहाँ पर हमने अभी तक कोई भी कोडिंग नहीं की हैं।  कोडिंग हम पूरा फॉर्म बनने पर करेंगे।

 ४ ) अब पेमेंट ऑप्शन बटन के सामने ऑप्शन बटन को ड्रैग करे। यहाँ पर हम २ ऑप्शन बटन लेंगे।  पहले मैं लिखंगे मंथली और दूसरे मैं लिखंगे इयरली। मतलब अगर आप महीने और सालाना के हिसाब से यहाँ पर EMI निकालन चाहे तो निकल सके।
अब दोनों बटनो पर  डबल क्लिक करके प्रोपेरिट्स मैं जाकर कैप्शन के यहाँ से इनका नाम चेंज करे Monthly or Yearly .

यहाँ पर हमारा लोन कैलकुलेटर पूरी तरह से बन चूका हैं।  अब हम इस पर कोडिंग करेंगे।  यहाँ पर हमने फॉर्म  बनाया नहीं बनाया हैं इसलिए हम वर्कशीट पर ही कोडिंग करेंगे।
१) डेवलपर टूल पर क्लिक करे
२) विसुअल  बेसिक आप्लिकेशन पर क्लिक करे।
३)व्यू कोड से वर्कशीट और चेंज को सेलेक्ट करे।
जैसे ही आप इसे चेंज करेंगे आपको प्राइवेट सब वर्कशीट _चेंज (By Val Target As Range ) इस तरह का वैरिएबल दिखाई देगा।  हम यहाँ पर प्रोग्राम टाइप करेंगे। 


हमने प्रोग्राम मैं लिखा हैं यदि D3 मैं लोन वैल्यू लिख तो वो प्रोग्राम रन  होना चाहिए। D3 को अब्सोलुटे रेफरन्स दे दिया।   


  • ScrollBar Button1
अब हम स्क्रॉल बार बटन १ को प्रोग्राम देंगे। स्क्रॉल बटन पर राइट क्लिक करके व्यू कोड सेलेक्ट करे।
और प्रोग्राम टाइप करे।


  • ScrollBar Button2
Application.Run"Calculator


  • Option Button 1"Monthly"
ऑप्शन बटन पर राइट क्लिक करे और व्यू कोड सेलेक्ट करे।  फिर प्रोग्राम टाइप करे।


यहाँ पर हमने प्रोग्राम को ये बताया हैं की अगर ऑप्शन बटन  वैल्यू के बराबर हैं  तो कॉलम C 12 मैं मंथली लिखकर आये।


  • Option Button 2 "Yearly"




अब हम यहाँ पर सब प्रोसीजर बनायेगे जिसमें Pmt formula टाइप करेंगे। आप ये जानते हैं। सब प्रोसीजर कैसे करते हैं।
डेवलपर पर क्लिक करना हैं ,
विसुअल बेसिक एप्लीकेशन सेलेक्ट करना हैं ,
इन्सर्ट मेनू से आपको मोडूयल सेलेक्ट करना हैं  और प्राइवेट सब टाइप करना हैं।
फिर ये प्रोग्राम टाइप करना हैं ,


अब आपको थोड़ा वर्कशीट पर चंगेस करना हैं। आप चाहे तो कलर भी चेंज कर सकते हैं , F5  मैं  परसेंटेज सेलेक्ट करना हैं
अब हमारा कैलकुलेटर पूरी तरह से तैयार हैं। 
यहाँ पर आप देखंगे की लोन अमाउंट १००००० हैं और इंटरेस्ट २% टर्म हमारा हैं ७ साल पेमेंट ऑप्शन मंथली सेलेक्ट  किया हैं इसलिए आपको EMI की जगह मंथली लिखा हुआ दिखाई देगा। पर आपको कितना EMI पे  करना हैं वो दिखाई देगा। हम यहाँ पर D12 को थोड़ा चेंज करंगे। डिक्रीसे डेसीमल  जिसे की आपको वैल्यू प्रॉपर मालूम हो। 
निचे सभी बटनो का प्रोग्राम लिखा हुआ हैं। 
Private Sub OptionButton2_Click()
If OptionButton2.Value = True Then Range("C12").Value = "Monthly"
Application.Run "Calculate"
End Sub

Private Sub OptionButton6_Click()
If OptionButton2.Value = True Then Range("C12").Value = "Yearly"
Application.Run "Calculate"
End Sub

Private Sub ScrollBar1_Change()
Range("F5").Value = ScrollBar1.Value / 100
Application.Run "Calculate"
End Sub

Private Sub ScrollBar2_Change()
Application.Run "Calculate"
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$3" Then Application.Run "Calculate"
End Sub


यहाँ पर हम कुछ बटन बनना सीखेंगे और उनकी प्रोगरामिंग भी।  बटन बनना के लिए आपको एक  यूजर फॉर्म बनाना हैं। और उसपर बटन ड्रैग  करने हैं। चलिए यहाँ पर हम एक्सेल मैं एक नई वर्कशीट लेंगे  जिसमें एक कंप्यूटर क्लास के एम्प्लोयी का फॉर्म  बनाएंगे जिस से हमे प्रोग्राम आसानी  से समझ मैं आ जाये।

  • User Form
सब से पहले हम यूजर फॉर्म डिज़ाइन करेंगे। इस तरह से। जिसमें ऊपर टेबल की सारी फ़ील्ड्स हो।


  • Clear Button
क्लियर बटन पर डबल क्लिक कर ले। अब इसमें प्रोग्राम टाइप करे।

अब हम इस प्रोग्राम को रन करके चेक करेंगे।


जब  आप क्लियर बटन पर क्लिक करेंगे तो आपका डाटा क्लियर हो जायेगा। मतलब से वहा से सारी डिटेल्स निकल जाएगी।


  • Submit Button
सबमिट बटन पर डबल क्लिक करेंगे और प्रोग्राम टाइप करेंगे।

प्रोग्राम मैं हमने डुप्लीकेट एंट्री करे तो हमें डुप्लीकेट वैल्यू मैसेज दिखे वो भी टाइप किया हैं 
प्रोग्राम को रन करे।
सबमिट बटन पर क्लिक करे।   आपका डाटा एक्सेल शीट मैं ट्रांसफर हो जायेगा।


  • Next Button
नेक्स्ट बटन पर जब हम क्लिक करे तो वो हमे आगे वाले रिकॉर्ड पर ले जाये।  इस प्रोग्राम को टाइप करने से पहले हमें टूल बॉक्स से बटन लेकर यूजर  फॉर्म पर ड्रैग करना होगा।  और उसका नाम नेक्स्ट लिखना होगा। लेकिन उस से पहले आपको यूजर फॉर्म पर डबल क्लिक करके प्रोग्राम लिखना होगा जिससे आपके सरे बटन बराबर  काम कर सके।
 जब आप  यूजर फॉर्म पर डबल क्लिक करेंगे तो आपको यूजर और इनिशियलाइज़  को सेलेक्ट करके  फिर प्रोग्राम टाइप करना हैं।  यूजर फॉर्म क्लिक पर नहीं।  और उसके उप्पर ग्लोबल प्रोग्राम टाइप करना हैं
Dim Currentrow As long



अब हम यहाँ पर नेक्स्ट बटन को यूजर फॉर्म मैं ड्रैग और प्रोग्राम को टाइप करेंगे।
`
नेक्स्ट बटन पर डबल क्लिक करेंगे

प्रोग्राम को रन करके चेक करे।


  • Back Button
बैक बटन आपको पीछे को और लेकर जायेगा जिससे की आप पीछे का रिकॉर्ड चेक कर सके। 

बैक बटन पर डबल क्लिक करे  और प्रोग्राम टाइप करे। 

प्रोग्राम को रन करे।  प्रोग्राम मैं लिखा हैं जब आप लास्ट रौ  पर होंगे तब आपको मैसेज दिखाई दे। ऐसे।
जब आप नेक्स्ट या बैक बटन प्रेस करेंगे तो आपको रिकॉर्ड चेंज होते दिखाई देंगे। 







  • Search Button
सर्च बटन आपके सामने वो रिकॉर्ड दिखायेगा जिसे आप सर्च करना चाहते हो। मान लीजिये जैसे की हमे किसी एम्प्लोयी की  ID से उसका रिकॉर्ड देखना हैं तो वो  हम कैसे सर्च करेंगे। आइये इसे देखते हैं। 
 टूलबॉक्स से एक बटन यूजर फॉर्म पर ड्रैग करेंगे।  जिस पर लिखेंगे सर्च।

सर्च बटन पर डबल क्लिक करे।  और प्रोग्राम टाइप करे। 
 इस प्रोग्राम मैं हमने लूप की हेल्प से २ कंडीशन दी हैं। 
१) कंडीशन मैं हमने बताया हैं की अगर डाटा मैं कोई वैल्यू डाले बिना ही सर्च करे तो हमें मैसेज दिखाई दे। "Enter Search Value"


 २)कंडीशन मैं हमने बताया हैं की अगर कोई डाटा मैं वर्कशीट मैं ना हो तो हमे मैसेज दिखाई दे। "Record Not Found". हमने यहाँ पर १०७ टाइप किया हैं। लेकिन हमारी वर्कशीट मैं १०७ रिकॉर्ड हैं ही नहीं।  


  • Edit Button
एडिट बटन हमे तब काम  आता है जब हमें रिकॉर्ड मैं कोई बदलाव करना होता हैं।  टूलबॉक्स से बटन सेलेक्ट करके यूजर फॉर्म पर ड्रैग करे।  और डबल क्लिक करके उस मैं प्रोग्राम टाइप करे।


और  रन करे।  सब से पहले सर्च बटन से उस रिकॉर्ड को ओपन करे जिसे आप चेंज करना चाहते हो। 
मान लीजिए हमें रिकॉर्ड  १ मैं कोई बदलाव करना हैं तब हम रिकॉर्ड को सर्च करेंगे और एडिट बटन पर क्लिक कर के उसे चेंज करेंगे।

यहाँ पर हम संदीप पिवळ का रिकॉर्ड चेंज करेंगे। हमने नाम , नंबर और जन्म तारीख बदल दी हैं ,लेकिन जब आप एडिट  बटन पर क्लिक करेंगे तो आपको मैसेज दिखाई देगा जिसमें सवाल का निशान और सवाल होगा ? क्युकी हमने प्रोग्राम मैं vbYesNo +vbQuestion लिखा हुआ हैं। अगर आप यहाँ पर यस बटन प्रेस करके कन्फर्म करते हैं तो आपके डाटा मैं बदलाव हो जायेगा।  यहाँ पर संदीप पिवळ की जगह संदीप गुप्ता हो गया हैं और फ़ोन नंबर और डेट ऑफ़ बिरथ भी बदल गया हैं। 
और अगर नो पर क्लिक करेंगे तो कोई भी बदलाव नहीं होगा। 

  • Delete Button 
डिलीट  बटन हम तब इस्तेमाल करते हैं जब हमें  रिकॉर्ड को डिलीट करना होता हैं। टूल बॉक्स से बटन सेलेक्ट करे और यूजर फॉर्म पर ड्रैग करे।  उस  बटन पर नाम लिखे डिलीट। अब प्रोग्राम टाइप करे।

प्रोग्राम को रन करे।  जब आप प्रोग्राम रन करेंगे तो रिकॉर्ड डिलीट करेने से पहले आपको प्रोग्राम कन्फर्म करेगा की आप रिकॉर्ड डिलीट करना चाहते हो। 

अगर  कन्फर्म करेंगे तो ही रिकॉर्ड डिलीट होगा। आप वर्कशीट मैं इसे आप चेक कर सकते हो।



  • How to do Textbox Calculation 
इस फॉर्म मैं हमने तक़रीबन सभी बटनो का इस्तेमाल और उन्हें कैसे बनाया जाता है वो सीखा। अब हम इसमें कुछ और टेक्स्ट बॉक्स ऐड करेंगे जिसमें हम एम्प्लोयी को बेसिक सैलरी ,हाउस अल्लौंस , मेडिकल अल्लौंस इत्यादि। ऐड करके उनका टोटल कैसे कर । ये सीखेंगे।

सब से पहले हम यूजर फॉर्म मैं बदलाव करेंगे। सभी बटनो सेलेक्ट करके इन्हे  निचे की और रखे।  इसमें तीन टेक्स्ट बॉक्स और लेबल  को ऐड करे। ऐसे।
यहाँ पर हमने तीन टेस्टबोक्स को ऐड  किया हैं जिसमें हम बेसिक सैलरी और हाउस अल्लौंस को ऐड करके उसका टोटल लास्ट वाले टेक्स्ट बॉक्स मैं करेंगे। आप सभी अलिंगमेंट विसुअल बेसिक मैं फॉर्मेट वाली मेनू से कर सकते हैं। 

अब हमें  वर्कशीट मैं तीन और कॉलम ऐड करेंगे ,

यहाँ पर हम ये चाहते है की जैसे ही हम यूजर  फॉर्म पर डिटेल फील करे और सारी डिटेल वर्कशीट मैं ऐड हो जाये तो हमें सबमिट बटन मैं भी कुछ बदलाव करने होंगे। 
१) सबमिट बटन पर डबल क्लिक करे। 
और ये तीन लाइन को ऐड करे। जो  हाईलाइट की हुई हैं 
जैसे ही हम प्रोग्राम टाइप करके उसे रन करेंगे तो यूजर फॉर्म ओपन होगा।  उसमें डाटा फिल कीजिये  और सबमिट बटन पर क्लिक करे। 

सब्मिट बटन पर क्लिक करने के बाद आपका डाटा वर्कशीट मैं चला जायेगा। 
लेकिन यहाँ हम ने टोटल मैं मैन्युअली टोटल किया हैं।  हम चाहते हैं की जब हम  सैलरी और हाउस अल्लौंस  टेक्स्ट बॉक्स मैं लिखे तो वो ऑटोमेटिक टोटल वाले टेस्टबोक्स मैं आये। तो हम उसके लिए ये प्रोग्राम लिखेंगे। 
यहाँ पर हमने प्रोग्राम मैं इफ कंडीशन और  लेन का इस्तेमाल किया हैं। लेन हमें ये बताएगा की  टेक्स्ट बॉक्स मैं कितनी वैल्यू हैं। और उस वैल्यू को नेक्स्ट  टेस्टबोक्स से ऐड कर देगा। 

 आप यहाँ पर देखंगे की  सैलरी ५००० हैं और हाउस अल्लौंस ५०० दोनों का टोटल ५५०० होना चाहिए। लेकिन यहाँ पर आपको टोटल ५००० ही दिखाई दे रहा हैं। क्युकी हमने फार्मूला सैलरी के टेक्स्ट बॉक्स को  दिया हैं। अगर आप सैलरी के अमाउंट को चेंज करेंगे तो आपको टोटल बदल जायेगा। 
अब हम ऐसा फार्मूला लिखंगे जिससे हाउस अल्लौंस मैं वैल्यू टाइप करू तो वो भी बदल जाये या ऐड होजाये 
इसके लिए हमे 
 इन्सर्ट मेनू पर क्लिक करना हैं। 


मॉडल पर आने के बाद आपको सब ऐड लिखेंगे।  ऐड हमारे सब  का नाम हैं 
जो फार्मूला अभी आपने  टेस्टबोक्स ५  मैं टाइप किया उसे सेलेक्ट करके कट करे , और  सब ऐड मैं पेस्ट करे। 
पेस्ट करने के बाद आपको इसे ये बताना हैं की आप कौनसे यूजर फॉर्म मैं काम कर  रहें हैं।  हम यहाँ पर यूजर फॉर्म १ मैं काम कर रहें हैं।  इसीलिए हम टेस्टबोक्स के सामने यूजर बॉक्स १ टाइप करेंगे। 
अभी इसे दुबारा टेस्टबोक्स ५ पर डबल क्लिक करे और लिखे 

Call Module2.Add 



इसे  टेस्टबोक्स ५ मैं भी डबल क्लिक करके पेस्ट करे। 
अब प्रोग्राम को रन करे आपको करेक्ट वैल्यू दिखाई देगी। 

  • Photo Insert
अब हम यूजर फॉर्म मैं फोटो ऐड करेंगे  जिस से हमें एम्प्लोयी की डिटेल के साथ साथ उसकी फोटो भी दिखाई दे।
टूलबॉक्स से इमेज बटन सेलेक्ट करे और यूजर फॉर्म पर  ड्रैग करे। और एक बटन ऐड करे । जिसपर अपडेट इमेज लिखे। 

अपडेट बटन पर डबल क्लिक करे और प्रोग्राम टाइप करे। 

अब प्रोग्राम को रन करे। डाटा फिल  करके अपडेट इमेज  पर क्लिक करके फोटो सेलेक्ट करे और सबमिट पर क्लिक करे। 


जब आप क्लियर बटन पर क्लिक करेंगे तो आपका डाटा क्लियर हो जायेगा लेकिन इमेज क्लियर नहीं होगी। जिसके लिए आपको क्लियर बटन पर डबल क्लिक करके ये प्रोग्राम टाइप करना होगा। 
अब आप क्लियर बटन पर क्लिक करेंगे तो आपका डाटा और इमेज दोनों क्लियर हो जायेगा। 


अब हम यहाँ पर समझेंगे की जब हम नेक्स्ट बटन पर क्लिक करे तो डाटा के साथ साथ फोटो भी चेंज हो। उसके लिए  सबसे पहले यूजर फॉर्म पर डबल क्लिक करे और रेड लाइन से मार्क किया हुआ प्रोग्राम टाइप करे। 


इस प्रोग्राम मैं ऑब्जेक्ट अपने आप एक नया फोल्डर बनाएगा जिसका नाम प्रोफाइल्स होगा और वो सभी  फाइल वही सब्मिट करेगा।  इसके बाद आपको सबमिट बटन  मैं भी प्रोग्राम टाइप करना होगा जिससे जब डाटा और फोटो सबमिट करे तो वो सही पथ पर सेव हो जाये। 
और ग्लोबल वेरिएबल लिखेंगे जिससे वो सभी बटन मैं काम करे। 


अभी प्रोग्राम को रन करे। डाटा फील करे और फोटो ऐड करके सबमिट करे। चार -पाचं रिकॉर्ड टाइप करे और फोटो ऐड करे फाइल नेक्स्ट और बैक बटन पर क्लिक करके चेक करे। 




सारा प्रोग्राम आपके सामने हैं। 
Dim Currentrow As Long
Dim profilepath As String
Dim fpath As String

Sub ImageDisplay()

temp = ActiveWorkbook.Path() + "\profiles\" + TextBox1.Value + ".jpg"
tempExists = Dir(temp)
  
  If tempExists = "" Then
     Image1.Picture = LoadPicture(vbNullString)
  Else
     Image1.Picture = LoadPicture(profilepath & "\" & TextBox1.Value & ".jpg")
     Image1.PictureSizeMode = fmPictureSizeModeClip
  End If

End Sub


'Submit Button
Private Sub CommandButton1_Click()
profilepath = ActiveWorkbook.Path() + "\profiles"

Dim lastrow As Long, count As Long
lastrow = Cells(Rows.count, 1).End(xlUp).Row
lastrow = lastrow + 1
Cells(lastrow, 1) = TextBox1
count = 0

For i = 2 To lastrow
If TextBox1 = Cells(i, 1) Then
count = count + 1
End If


If count > 1 Then
Cells(lastrow, 1) = ""
Cells(lastrow, 2) = ""
Cells(lastrow, 3) = ""
Cells(lastrow, 4) = ""
Cells(lastrow, 5) = ""
Cells(lastrow, 6) = ""
Cells(lastrow, 7) = ""
MsgBox "Duplicate Value"

End If

If count = 1 Then

Cells(lastrow, 1) = TextBox1.Value
Cells(lastrow, 2) = TextBox2.Text
Cells(lastrow, 3) = TextBox3.Value
Cells(lastrow, 4) = TextBox4.Value
Cells(lastrow, 5) = TextBox5.Value
Cells(lastrow, 6) = TextBox6.Value
Cells(lastrow, 7) = TextBox7.Value
End If

Next

Dim fObj As Object
Set fObj = CreateObject("Scripting.FileSystemObject")
Dim a As String
a = TextBox1.Text
FileCopy fpath, profilepath & "\" & a & ".jpg"

'Unload Me

End Sub

'Clear Button
Private Sub CommandButton2_Click()
Dim ctl As Control
For Each ctl In UserForm1.Controls
If TypeName(ctl) = "TextBox" Then
ctl.Value = ""
End If

With Me.Image1
  If .Picture Is Nothing Then             ' picture property has been cleared already
     .Picture = LoadPicture(sImgName)
  Else                                    ' a picture is already displayed
     .Picture = LoadPicture(vbNullString) ' clear it now
  End If
End With

Next
End Sub

'Next Button
Private Sub CommandButton3_Click()

Dim lastrow As Long

lastrow = Cells(Rows.count, 1).End(xlUp).Row
If Currentrow = lastrow Then
MsgBox "you are in the last row! No more data."
Exit Sub
End If

Currentrow = Currentrow + 1
TextBox1 = Cells(Currentrow, 1)
TextBox2 = Cells(Currentrow, 2)
TextBox3 = Cells(Currentrow, 3)
TextBox4 = Cells(Currentrow, 4)
TextBox5 = Cells(Currentrow, 5)
TextBox6 = Cells(Currentrow, 6)
TextBox7 = Cells(Currentrow, 7)
ImageDisplay


End Sub

'Back Button
Private Sub CommandButton4_Click()
If Currentrow = 2 Then
MsgBox " u r in the First Row"
Exit Sub
End If
Currentrow = Currentrow - 1
TextBox1 = Cells(Currentrow, 1)
TextBox2 = Cells(Currentrow, 2)
TextBox3 = Cells(Currentrow, 3)
TextBox4 = Cells(Currentrow, 4)
TextBox5 = Cells(Currentrow, 5)
TextBox6 = Cells(Currentrow, 6)
TextBox7 = Cells(Currentrow, 7)
ImageDisplay
End Sub
'Search Button
Private Sub CommandButton5_Click()

Dim TotalRows  As Long, i As Long
Dim fn As String

Image1.Picture = LoadPicture(profilepath & "\" & TextBox1.Value & ".jpg")
Image1.PictureSizeMode = fmPictureSizeModeClip

TotalRows = Worksheets("Sheet1").Range("A1").CurrentRegion.Rows.count

'Condtion 1
If TextBox1.Value = "" Then
MsgBox "Enter Search value"
End If

'condtion2

For i = 2 To TotalRows

If Trim(Cells(i, 1)) <> Trim(TextBox1.Value) And i = TotalRows Then
MsgBox " Record Not Found"
End If

If Trim(Cells(i, 1)) = Trim(TextBox1.Value) Then
TextBox1.Value = Cells(i, 1)
TextBox2.Value = Cells(i, 2)
TextBox3.Value = Cells(i, 3)
TextBox4.Value = Cells(i, 4)
TextBox5.Value = Cells(i, 5)
TextBox6.Value = Cells(i, 6)
TextBox7.Value = Cells(i, 7)
Exit For

End If

Next i
On Error Resume Next

End Sub
'Edit Button
Private Sub CommandButton6_Click()
answar = MsgBox("U want to update record?", vbYesNo + vbQuestion, " R U SURE U WANT TO UPDATE?")

If answar = vbYes Then
Cells(Currentrow, 1) = TextBox1.Value
Cells(Currentrow, 2) = TextBox2.Value
Cells(Currentrow, 3) = TextBox3.Value
Cells(Currentrow, 4) = TextBox4.Value
Cells(Currentrow, 5) = TextBox5.Value
Cells(Currentrow, 6) = TextBox6.Value
Cells(Currentrow, 7) = TextBox7.Value
End If
End Sub

'Delete
Private Sub CommandButton7_Click()
answar = MsgBox("R u Sure want to Delete?", vbYesNo + vbQuestion, " Delete Record")

If answar = vbYes Then
Cells(Currentrow, 1).EntireRow.Delete
End If

End Sub

'Image Upload Button

Private Sub CommandButton8_Click()

Application.FileDialog(msoFileDialogOpen).AllowMultiSelect = False

X = Application.FileDialog(msoFileDialogOpen).Show

If X <> 0 Then

fpath = Application.FileDialog(msoFileDialogOpen).SelectedItems(1)

Image1.Picture = LoadPicture(fpath)

Image1.PictureSizeMode = fmPictureSizeModeClip

End If


End Sub

Private Sub Image1_BeforeDragOver(ByVal Cancel As MSForms.ReturnBoolean, ByVal Data As MSForms.DataObject, ByVal X As Single, ByVal Y As Single, ByVal DragState As MSForms.fmDragState, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As Integer)
ImageDisplay
End Sub

'Add Text
Private Sub TextBox5_Change()
Call Module2.Add
End Sub
'Add Test
Private Sub TextBox6_Change()
Call Module2.Add
End Sub

Private Sub UserForm_Initialize()
'To check & create the folder
Currentrow = 2
TextBox1 = Cells(Currentrow, 1)
TextBox2 = Cells(Currentrow, 2)
TextBox3 = Cells(Currentrow, 3)
TextBox4 = Cells(Currentrow, 4)
TextBox5 = Cells(Currentrow, 5)
TextBox6 = Cells(Currentrow, 6)
TextBox7 = Cells(Currentrow, 7)

On Error Resume Next

Dim fObj As Object
Set fObj = CreateObject("Scripting.FileSystemObject")
profilepath = ActiveWorkbook.Path() + "\profiles"
If Not fObj.FolderExists(profilepath) Then
fObj.CreateFolder (profilepath)
End If

End Sub

थैंक यू उम्मीद हैं की आपको सभी सभी बटन समझने मैं सफल रहा होंगा ,
धन्यवाद

Comments

Popular posts from this blog

Pivot Table, Pivot chart, Tables, AND Slicers

हेलो, कैसे हो आप सब? आज हम बात करेंगे एक्सेल मैं सब से पॉपुलर टूल की पाइवोट और पिवोट टेबल जैसे भी आप इससे कहे। पिवोट टेबल सरल शब्दो मैं कहु तो पिवोट टेबल आपके डाटा की समरी हैं। आइये इसे हम जानते हैं और समझते हैं। मान लीजिये हमारे पास बहुत सारा डाटा हैं और उस डाटा कीहमें समरी निकालनी हैं तो उसे हम पिवोट टेबल की हेल्प से कर सकते हैं। मेरे पास एक छोटा टेबल हैं उसके जरिये मैं आपको बताना चाहूंगा।   टेबल मैं से हमें जेंडर वाइस सभी डिपार्टमेंट की एवरेज सैलरी निकालनी हैं।  १) इन्सर्ट मेनू पर क्लिक करे  २)पिवोट टेबल सेलेक्ट करे  अब आप देखेंगे की आपके सामने क्रिएट पिवोट टेबल दिखाई देगी।  १) सेलेक्ट अ टेबल और रेंज मैं हम पुरे टेबल को  सेलेक्ट करेंगे  २) न्यू वर्कशीट अगर अपने डाटा की समरी न्यू वर्कशीट पर चाहिए तो आप न्यू वर्कशीट सेलेक्ट करे. या एक्सिस्टिंग वर्कशीट  को सेलेक्ट करे।  मतलब जहा पर आपका डाटा हैं ताकि रिजल्ट वही दिखाई दे. ३) लोकेशन मैं वो सेल सेलेक्ट करे जहा पर आप पिवोट टेबल देखना चाहते हो.  ४) ओके बटन ...

Macro Part-2

कल हमने मैक्रो मैं सेल रिफरेन्स के बारे मैं जानकारी ली। आज हम इसपर और थोड़ी  जानकारी प्राप्त करेंगे। हम आपको पहले मैक्रो कैसे रेकॉर्ड करते हैं ये जानकारी दे चुके हैं। हम यहाँ पर आपको ये जानकारी देने की कोशिश कर रहें हैं की मैक्रो कैसे अपना प्रोग्राम टाइप करता हैं। यहाँ पर हम समझेंगे की मैक्रो कॉपी पेस्ट प्रोग्राम को कैसे टाइप करता हैं। Program 3 Copy_Paste Sub Copy_Paste() Range("a1:a10")="GlobeNet" '1st Method Range("B1:B10")= Range("a1:a10").value '2nd method Range(:a1:a10").copy Range("d1:d10").PasteSpecialApplication.cutcopyMode = false  End Sub इस प्रोग्राम मैं हम सेल a1: a10 मैं ग्लोबेनेट टाइप करना हैं  b1:b2 मैं कॉपी करके पेस्ट करना हैं।  और d1:d10 मैं कट कॉपी मोड मैं लाना हैं।  इस प्रोग्राम मैं हम समझेंगे की फॉण्ट पर मैक्रो किसतरह काम करता हैं।  जैसे फॉण्ट स्टाइल चेंज करना ,बोल्ड ,इटालिक, अंडरलाइन ,फॉण्ट का साइज बढ़ाना , फॉण्ट का कलर चेंज करना , srikethrough  इत्यादि।  Program4 Font...

TallyPrime| How to Create Purchase Order In Tally Prime. Purchase Order ...