Een handeling in Excel herhalen via een macro

Anoniem
2021-09-11T09:32:00+00:00

Ik heb in Excel een kolom met een aantal waarden die ik wil verplaatsen naar een andere kolom. Ik heb hierover wel een post gevonden, maar daar was het uitgangspunt net weer anders. Ik heb een heel eenvoudige macro gemaakt die dit voor de eerste 3 rijen uitvoert, maar ik weet niet hoe ik deze actie kan laten herhalen voor de onderliggende rijen.

Uitgangspunt:

De waarde in cel B2 wil ik verplaatsen naar cel G2, de waarde in B3 naar H2, de waarde in B4 naar I2.

De waarde in cel B5 wil ik verplaatsen naar cel G5, de waarde in B6 naar H5, de waarde in B7 naar I5.

En dit wil ik steeds herhalen, tot aan de laatste waarde in kolom B (het aantal rijen kan variëren)

Hoe krijg ik deze herhaling inbouwen in onderstaande macro?

Daarnaast ben ik op zoek naar een overzicht van VBA-commando's.

Sub DWFcodeVerplaatsen()

'

' DWFcodeVerplaatsen Macro

'

'

Columns("B:B").Select 

Selection.Find(What:="DWF code thuis", After:=ActiveCell, LookIn:= \_ 

    xlFormulas2, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= \_ 

    xlNext, MatchCase:=False, SearchFormat:=False).Activate 

Range("B2").Select 

Selection.Cut Destination:=Range("G2") 

Columns("B:B").Select 

Selection.Find(What:="DWF code uit", After:=ActiveCell, LookIn:= \_ 

    xlFormulas2, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= \_ 

    xlNext, MatchCase:=False, SearchFormat:=False).Activate 

Range("B3").Select 

Selection.Cut Destination:=Range("H2") 

Columns("B:B").Select 

Selection.Find(What:="DWF code scheidsrechters", After:=ActiveCell, LookIn \_ 

    :=xlFormulas2, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= \_ 

    xlNext, MatchCase:=False, SearchFormat:=False).Activate 

Range("B4").Select 

Selection.Cut Destination:=Range("I2") 

Range("I2").Select 

End Sub

Microsoft 365 en Office | Excel | Voor thuisgebruik | Windows

Vergrendelde vraag. Deze vraag is gemigreerd vanuit de Microsoft Ondersteuning-community. Je kunt met een stem aangeven of de inhoud nuttig is, maar je kunt geen opmerkingen of antwoorden toevoegen of de vraag volgen.

0 opmerkingen Geen opmerkingen
{count} stem

2 antwoorden

Sorteren op: Meest nuttig
  1. Anoniem
    2021-09-12T23:02:21+00:00

    De waarde in cel B2 wil ik verplaatsen naar cel G2, de waarde in B3 naar H2, de waarde in B4 naar I2. De waarde in cel B5 wil ik verplaatsen naar cel G5, de waarde in B6 naar H5, de waarde in B7 naar I5. En dit wil ik steeds herhalen, tot aan de laatste waarde in kolom B (het aantal rijen kan variëren). Hoe krijg ik deze herhaling inbouwen in onderstaande macro?

    Inbouwen in jouw macro ga ik maar niet doen, want het kan veel eenvoudiger.

    Bijvoorbeeld met deze macro:

    Sub transponeer() 
    
    Dim x As Integer 
    
    With Sheets("Blad1") 
    
    x = 2 
    
    Do Until IsEmpty(.Range("B" & x)) 
    
    .Range("G" & x & ":I" & x) = WorksheetFunction.Transpose(.Range("B" & x & ":B" & x + 3)) 
    
    x = x + 3 
    
    Loop 
    
    End With 
    
    End Sub
    

    Wil je de inhoud van kolom B wissen, dan voeg je aan de macro nog een regel toe om dat te doen.

    Overigens: de inhoud van cellen verplaatsen en dus niet kopiëren, doet onmiddellijk de vraag oproepen waarom je de waarden niet meteen in de gewenste cellen plaatst, dan is verplaatsen niet nodig.

    Daarnaast ben ik op zoek naar een overzicht van VBA-commando's.

    Die zijn allemaal gratis en voor niets te vinden in de vba-helpfile, te bereiken door op de F1-toets te drukken als je in de vba-editor bent. Je kunt je daar makkelijk een flink aantal jaren mee bezig houden, maar dat is pas echt zinvol als je Excel zonder vba (en dan vooral de werkbladfuncties) goed kent en daar lange tijd grondig mee bezig bent geweest.

    0 opmerkingen Geen opmerkingen
  2. Anoniem
    2021-09-13T20:54:56+00:00

    Hartelijk dank aalpha,

    Dit is precies wat ik zocht. De reden waarom ik de tekst wil verplaatsen is omdat ik de data in het Excel-bestand plak vanuit een PDF.

    Ik wil de inhoud van kolom B inderdaad wissen en zal me in de helpfile verdiepen.

    Groet, Dennis

    0 opmerkingen Geen opmerkingen