Hoe een bereik in vba te transponeren (met voorbeeld)


U kunt de volgende basissyntaxis gebruiken om een bereik te transponeren met VBA:

 SubTransposeRange ()

    'specify range to transpose
    MyRange = Range(" A1:B5 ")
    
    'find dimensions of range
    XUpper = UBound(MyRange, 1)
    XLower = LBound(MyRange, 1)
    YUpper = UBound(MyRange, 2)
    YLower = LBound(MyRange, 2)
    
    'transpose range
    Range(" D1 ").Resize(YUpper - YLower + 1, XUpper - XLower + 1).Value = _
      WorksheetFunction.Transpose(MyRange)
      
End Sub

In dit specifieke voorbeeld worden de cellen in het bereik A1:B5 getransponeerd en wordt het getransponeerde bereik weergegeven, beginnend in cel D1 .

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld: hoe u een bereik in VBA transponeert

Stel dat we de volgende gegevensset in Excel hebben die informatie bevat over verschillende basketbalspelers:

Stel dat we het bereik A1:B5 willen transponeren en het getransponeerde bereik willen weergeven, beginnend in cel D1 .

We kunnen hiervoor de volgende macro maken:

 SubTransposeRange ()

    'specify range to transpose
    MyRange = Range(" A1:B5 ")
    
    'find dimensions of range
    XUpper = UBound(MyRange, 1)
    XLower = LBound(MyRange, 1)
    YUpper = UBound(MyRange, 2)
    YLower = LBound(MyRange, 2)
    
    'transpose range
    Range(" D1 ").Resize(YUpper - YLower + 1, XUpper - XLower + 1).Value = _
      WorksheetFunction.Transpose(MyRange)
      
End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

Merk op dat het getransponeerde bereik wordt weergegeven vanaf cel D1 .

Met andere woorden, de rijen en kolommen zijn omgedraaid.

Om een ander bereik te transponeren, vervangt u eenvoudigweg A1:B5 in de macro door een ander bereik.

Opmerking : u kunt hier de volledige documentatie voor de VBA Transpose- methode vinden.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:

VBA: cellen tellen met specifieke tekst
VBA: het aantal rijen binnen bereik tellen
VBA: Hoe COUNTIF- en COUNTIFS-functies te schrijven

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert