[Excel] Macro voor invoegen letter

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • AMARONE
  • Registratie: April 2013
  • Nu online
Mijn vraag
Ik wil graag d.m.v. de letters J of L(wingdings lettertype laat bij die letters een smiley zien) een smiley invoegen in een Excel werkblad. De bedoeling is dat je dan in een lege cel staat en op de blije of boze smiley knop drukt en in die cel dan een blije of boze smiley komt. Nu is min macro kennis niet voldoende om dit voor elkaar te krijgen, weet iemand hoe ik dit kan oplossen?

Relevante software en hardware die ik gebruik
Excel

Wat ik al gevonden of geprobeerd heb
Ik heb geprobeerd een macro op te nemen, het probleem hierbij is dat alleen de cel waar ik de macro opnam de letter wijzigt. Als ik in een andere cel ga staan werkt het niet.

Beste antwoord (via AMARONE op 15-06-2020 09:00)


  • DCV191283
  • Registratie: Juni 2013
  • Laatst online: 08-10 14:21
Je weet dat je in excel ook macro's op kan nemen? Google daar anders eens op, dan kom je een eind.
Als ik dat doe en vervolgens zorg dat de verwijzingen naar de cel waar ik op stond toen ik het macro opnam verwijder, dan komen daar de volgende codes uit.

Stop die onder een knop en je hebt wat je wil...


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub J()

    ActiveCell.FormulaR1C1 = "J"
    With Selection.Font
        .Name = "Wingdings"
        .Size = 10
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
End Sub


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub L()
    
    ActiveCell.FormulaR1C1 = "L"
    
    With Selection.Font
        .Name = "Wingdings"
        .Size = 10
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
End Sub

Alle reacties


Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • DCV191283
  • Registratie: Juni 2013
  • Laatst online: 08-10 14:21
Je weet dat je in excel ook macro's op kan nemen? Google daar anders eens op, dan kom je een eind.
Als ik dat doe en vervolgens zorg dat de verwijzingen naar de cel waar ik op stond toen ik het macro opnam verwijder, dan komen daar de volgende codes uit.

Stop die onder een knop en je hebt wat je wil...


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub J()

    ActiveCell.FormulaR1C1 = "J"
    With Selection.Font
        .Name = "Wingdings"
        .Size = 10
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
End Sub


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub L()
    
    ActiveCell.FormulaR1C1 = "L"
    
    With Selection.Font
        .Name = "Wingdings"
        .Size = 10
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
End Sub

Acties:
  • 0 Henk 'm!

  • AMARONE
  • Registratie: April 2013
  • Nu online
Ja, wat ik zeg. Geen koning in Excel. Maar bedankt, het is gelukt!
(zo simpel eigenlijk)

Acties:
  • +1 Henk 'm!

  • dix-neuf
  • Registratie: Juli 2018
  • Niet online
En als je ook nog weet dat de meeste opdrachten in bovenstaande macro's standaardinstellingen zijn (die dus al automatisch worden toegepast zonder dat je daar opdracht voor geeft), kun je volstaan met:
code:
1
2
3
4
5
6
Sub J()
With ActiveCell
.Value = "J"
.Font.Name = "Wingdings"
End With
End Sub

En als de cel(len) waarin je smilies wil plaatsen steeds dezelfde zijn, kun je volstaan met het lettertype voor die cel(len) in te stellen op 'Windings' en heb je geen macro's nodig. Je hoeft dan alleen maar de hoofdletter J of L in te toetsen.

[ Voor 6% gewijzigd door dix-neuf op 15-06-2020 10:10 ]