• 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.

Kleur toevoegen in macro

Status
Niet open voor verdere reacties.

Chris15

Gebruiker
Lid geworden
23 aug 2016
Berichten
552
Ik heb een macro gemaakt die een 5 intypt, kan deze 5 de kleur rood krijgen in de macro?

Sub Macro5()
'
' Macro5 Macro
'

'
Range("A2:B2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("B2").Select
ActiveCell.FormulaR1C1 = "5"
Range("B1").Select
End Sub
 
Zoiets?
Code:
Sub Macro5()
    Range("A2:B2").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    With Range("B2")
        .FormulaR1C1 = "5"
        .Interior.ColorIndex = 15
    End With
End Sub
 
Nu zet hij een gewone zwarte 5 neer met een grijze achtergrond.....
 
Ik had te snel gelezen ;)
Code:
Sub Macro5()
    Range("A2:B2").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    With Range("B2")
        .FormulaR1C1 = "5"
        .Font.ColorIndex = 3
    End With
End Sub
 
Geweldig! hij werkt :)

Ik heb mijn macro opgenomen, en niet handmatig gemaakt.

Ik zie dat jou code veel schoner is, dat is wel fijn.

Wat is trouwens de kleur groen en donkergroen?
 
Hier staat de Excel color palette voor het ColorIndex attribuut.
 
Dank je!

In mijn "opgenomen" macro gaat hij terug naar B1 (Range("B1").Select)

In jou code zie ik B1 nergens staan, maar hij gaat er wel naar toe op het eind..... hoe zit dat? :)
 
Die .Select opdrachten zijn nooit nodig en dien je zoveel mogelijk te vermijden. Dit in verband met performance.
De macro recorder voegt deze toe omdat dat precies is wat er op dat moment gebeurt.
Ik heb die zaken voor je samengevoegd zodat er gebeurt wat je wil met de cellen die zijn aangegeven.
 
Oke!

Jou eerste code werkte goed achter al mijn opgenomen codes,

Die heb ik nu allemaal weggehaald en alleen jou code gebruikt, maar nu werkt het niet meer... Zie onderstaande code:

Sub Macro0()
Range("A2:B2").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
With Range("B2")
.FormulaR1C1 = “0”
.Font.ColorIndex = 10
End With
End Sub
Sub Macro1()
Range("A2:B2").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
With Range("B2")
.FormulaR1C1 = “1”
.Font.ColorIndex = 3
End With
End Sub
Sub Macro2()
Range("A2:B2").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
With Range("B2")
.FormulaR1C1 = “2”
End With
End Sub
 
Alles werkt!

Kan jij misschien onderstaande code ook opschonen?

Sub MacroDelete()
'
' MacroDelete Macro
'

'
Range("A2:B2").Select
Selection.Delete Shift:=xlUp
Range("B1").Select
End Sub
 
Code:
Sub MacroDelete()
    Range("A2:B2").Delete Shift:=xlUp
End Sub
 
Dank je Edmoor, je was een geweldige hulp, en ik heb weer iets geleerd! :)
 
Edmore, kan aan deze code een waarschuwing komen of je ook ECHT alles wilt wissen?

Sub MacroDeleteAll()
Range("A3:A2000").Select
Selection.Delete Shift:=xlUp
Range("A1").Select
End Sub
 
Probeer deze maar eens:
Code:
Sub MacroDeleteAll()
    If MsgBox("Weet u het zeker?", vbOKCancel, "Alles verwijderen") = vbYes Then
        Range("A3:A2000").Delete Shift:=xlUp
    End If
End Sub
 
De waarschuwing komt wel, maar als ik op ja klik gebeurd er niets...
 
Foutje van mij.
vbYes moet vbOk zijn.
 
Ja, dit werkt!

Maar hij blijft de complete reeks selecteren, misschien omdat ik Excel Mac heb?
Kan er op het einde een code dat hij desselecteerd en terugkeert naar A1?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan