एक मैक्रो कैसे बनाएं जो एक विशिष्ट सेल पर शुरू होने वाली दूसरी शीट पर डेटा ट्रांसफर करेगा और (बाद के इनवोकेशन पर) नीचे की तरफ अपना काम करेगा?


0

SHEET1 में मेरे पास एक DATA INPUT सेल (सेल B3) है। मैं एक मैक्रो कोड बनाना चाहता हूं कि जब मैक्रो बटन दबाया जाता है, तो SHEET1 के सेल B3 से डेटा को SHEET2 के सेल C5 में कॉपी किया जाएगा और SHEET1 के सेल B3 में इनपुट किए गए डेटा को हटा दिया जाएगा। और फिर जब मैं एक और डेटा इनपुट करता हूं और फिर से बटन दबाता हूं, तो डेटा को इस केस सेल C6 में SHEET2 की अगली पंक्ति में कॉपी किया जाएगा। फिर, सेल C7, C8, और इसी तरह।

मैंने इसके लिए एक कोड बनाने की कोशिश की, लेकिन मैं इसे सेल C5 पर शुरू नहीं कर सकता। यह हमेशा सेल सी 2 से शुरू होता है फिर नीचे की ओर। मैंने "प्रारंभ" जैसे कोड पर शोध करने की कोशिश की, लेकिन मैं इसे काम नहीं कर सकता।

कृपया नीचे कोड देखें:

Sub Button1_Click()
Response = MsgBox("Are you sure?", vbYesNo)
If Response = vbNo Then Exit Sub
Dim nextrow As Long
nextrow = Worksheets("Sheet2").Cells(Rows.Count, "C").End(xlUp).Row + 1
Worksheets("Sheet1").Range("B3").Copy Worksheets("Sheet2").Range("C" & nextrow)
Worksheets("Sheet1").Range("B3").ClearContents
End Sub

कृपया ध्यान दें कि superuser.com एक मुफ्त स्क्रिप्ट / कोड लेखन सेवा नहीं है। यदि आप हमें बताते हैं कि आपने अब तक क्या प्रयास किया है (जिन लिपियों / कोड का आप पहले से उपयोग कर रहे हैं) और जहां आप अटके हुए हैं, तो हम विशिष्ट समस्याओं में मदद करने का प्रयास कर सकते हैं। आपको यह भी पढ़ना चाहिए कि मैं एक अच्छा सवाल कैसे पूछूं?
DavidPostill

क्या आपके पास पहले से ही कोशिकाओं में डेटा है C1- C4शीट 2 पर?  Cells(Rows.Count, "C").End(xlUp).Row+1मूल रूप से कह रहा है कि "अंतिम पंक्ति (कॉलम में) का उपयोग करें, और फिर अगले एक पर जाएं"। आपने क्या किया है यह सोचने के लिए कि आप इसे पंक्ति 2 में शुरू नहीं करना चाहते हैं? क्या यह (सही ढंग से) पंक्ति 3, पंक्ति 4, पंक्ति 5, आदि के लिए आगे बढ़ रहा है, जब आप इसे बार-बार लागू करते हैं?
स्कॉट

हाय सर स्कॉट, आपके उत्तर के लिए धन्यवाद। हां, यह पंक्ति 2 से पंक्ति 3 तक नीचे की ओर सही ढंग से आगे बढ़ रहा है। लेकिन मेरी स्प्रेडशीट के लिए, मुझे A1: B4 पर डेटा डालना होगा। इसलिए मेरा कॉपी / पेस्ट किया गया डेटा रो 5 पर शुरू होना चाहिए, लेकिन दुर्भाग्य से C1-C4 में कोई डेटा नहीं है। मुझे नहीं पता कि C5 पर कॉपी / पेस्ट शुरू करने के लिए VBA कैसे सेट करें।
फ्रिट्ज़ ओन्ग

हाय सिरस। मैंने हल खोज लिया है, धन्यवाद!
फ्रिट्ज़ ओन्ग

जवाबों:


0

यदि आप चाहते हैं कि डेटा को पंक्ति 5 में कॉपी किया जाए तो पहली बार मैक्रो चलाने पर, आप ऐसा कर सकते हैं:

उप Button1_Click ()
    प्रतिक्रिया = MsgBox ("क्या आप निश्चित हैं?", VbYesNo)
    यदि प्रतिक्रिया = vbNo तब उप से बाहर निकलें
    डिम नेवर ऐज लॉन्ग
    nextrow = कार्यपत्रक ("शीट 2")। कोशिकाएं (पंक्तियाँ, "C")। अंत (xlUp) ।Row + 1
& Rarr   ; यदि अगला अगला 5 <तो अगला तीर = 5                                                      <
    वर्कशीट ("शीट 1")। रेंज ("बी 3")। कॉपी वर्कशीट ("शीट 2")। रेंज ("सी" और अगलारो)
    कार्यपत्रक ( "Sheet1")। रेंज ( "बी 3")। ClearContents
अंत उप

आप एक अलग जवाब मिल गया है, तो आप इसे पोस्ट करना चाहिए ( के रूप में भी एक अलग जवाब)।
स्कॉट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.