एक्सेल - पंक्तियों से स्तंभों में डेटा स्थानांतरित करने के लिए एक मैक्रो
मुद्दा
अब डेटा नीचे प्रारूप में है१ २ ३९ १५ १६ २० २५
1
इस प्रारूप में आना होगा
12
3
9
15
16
20
25
1
उपाय
मान्यताओं:- 1. डेटा रो 1 से शुरू होता है और इसे हमेशा कॉलम ए में कॉपी किया जाता है
- 2. डेटा के विरूपण के बिना पंक्तियाँ डाली जा सकती हैं
उप ट्रांसस्पेशल ()डिम lMaxRows शीट में लंबी 'अधिकतम पंक्तियों के रूप में
लंबी प्रक्रिया के रूप में मंद lThisRow संसाधित किया जा रहा है
डिम iMaxCol इंटेगर के रूप में अधिकतम इस्तेमाल किए जाने वाले पंक्ति में कॉलम का उपयोग किया जाता है
lMaxRows = कक्ष (पंक्तियाँ, "A")। अंत (xlUp .Row)
lThisRow = 1 'पंक्ति 1 से शुरू होता है
Do जबकि LThisRow <lMaxRows
iMaxCol = कक्ष (lThisRow, Columns.Count)। और (xlToeeft)। स्तंभ।
यदि (iMaxCol> 1) तब
पंक्तियाँ (lThisRow + 1 & ":" & lThisRow + iMaxCol - 1)
रेंज (सेल (lThisRow, 2), Cells (lThisRow, iMaxCol)) कॉपी करें।
रेंज ("ए" और lThisRow + 1)। चयन करें
चयन। विशेष पेस्ट: = xlPasteAll, ऑपरेशन: = xlNone, SkipBlanks: = गलत, स्थानान्तरण: = सही
श्रेणी (कक्ष) (lThisRow, 2), कक्ष (lThisRow, iMaxCol)।
lThisRow = lThisRow + iMaxCol - 1
lMaxRows = कक्ष (पंक्तियाँ, "A")। अंत (xlUp .Row)
अगर अंत
lThisRow = lThisRow + 1
लूप
अंत उप