• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Macro starten op willekeurige cel

Status
Niet open voor verdere reacties.

laarimda

Gebruiker
Lid geworden
21 mrt 2007
Berichten
34
Hallo,

Ben niet zo bekend met VBA en ik kom er niet uit.

Voorbeeld: ik begin in A1 en en geef A2 een achtergrondkleur geel. Een heel simpele macro opgenomen met de marcorecorder.

Sub Macro1()

' Sneltoets: CTRL+a

Range("B1").Select
With Selection.Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
End Sub


Maar hoe moet ik de code veranderen, zodat ik met deze macro op een ander startpunt kan beginnen. Want nu blijft die naar B1 verwijzen.

Alvast bedankt...
 
Code:
Sub Macro1()

' Sneltoets: CTRL+a

With ActiveCell.Offset(,1).Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
End Sub
 
OK, blij dat het opgelost is.

Uit de code die de macro recorder geeft, moet je zoveel mogelijk .Select weglaten. (en zien dat de code nog steeds werkt natuurlijk :))
 
Oke...nu wil ik dit gaan toepassen in de volgende situatie,

Sub Macro2()

' Sneltoets: CTRL+b

Range("B34:C34").Select
Selection.Cut
Range("B36").Select
ActiveSheet.Paste
Rows("34:35").Select
Selection.EntireRow.Hidden = True
End Sub

Deze handeling moet ik diverse keren uitvoeren in het werkblad, maar uiteraard niet op dezelfde plek. Nu zitten we weer met die verwijzingen naar cellen. Het zou meer moeten zijn...selecteer 2 cellen rechts...cut...plak 2 regels eronder enz...Kan je nog een hintje geven...select moet dus duidelijk weg...
 
Code:
Sub Macro2()

With Range("B34")
    .Resize(,2).Cut .Offset(2)
    .Resize(2).EntireRow.Hidden = True
End With
End Sub

Neem maar eens rustig de tijd om dit uit te klaren. Zie ook help files.

Wigi
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan